A Natural Experience for Looking
A lightweight, privacy-friendly browser extension that enhances Instagram Reels viewing with smart rotation, aspect ratio controls, theater mode, and true fullscreen.
- ๐ Smart Rotation - Rotate videos 90ยฐ/180ยฐ/270ยฐ with automatic scaling for landscape viewing
- ๐ Aspect Ratio Controls - Choose from Original, 9:16, 16:9, 4:3, 1:1, Fit, Fill, or Stretch
- ๐ฌ Theater Mode - Cinematic viewing that dims UI while keeping scroll functionality
- โถ True Fullscreen - Browser-native fullscreen without Instagram's UI clutter
- ๐ Smooth Zoom & Pan - Zoom in/out with mouse wheel or buttons, pan to focus on content
- โจ๏ธ Keyboard Shortcuts - Full keyboard control for power users
- โจ SPA-Aware - Automatically re-initializes when scrolling through reels
- ๐ฏ Smart Centering - Keeps content centered without cropping important areas
- ๐ Privacy-First - Zero data collection, no external requests
| Key | Action |
|---|---|
R |
Rotate clockwise (90ยฐ) |
L |
Rotate counter-clockwise (-90ยฐ) |
T |
Toggle Theater Mode |
F |
Toggle Fullscreen |
A |
Cycle through aspect ratios |
= |
Zoom in |
- |
Zoom out |
Shift + Scroll |
Zoom with mouse wheel |
Esc |
Reset all transforms |
X |
Like / Unlike active Reel |
| Mode | Description |
|---|---|
| Original | Keep the video's native aspect ratio |
| 9:16 | Portrait mode (standard Reels) |
| 16:9 | Widescreen landscape |
| 4:3 | Classic TV ratio |
| 1:1 | Square format |
| Fit | Scale to fit within container |
| Fill | Scale to fill container (may crop edges) |
| Stretch | Stretch to fill (distorts aspect ratio) |
- Download or clone this repository
- Open your browser and navigate to:
- Chrome:
chrome://extensions - Edge:
edge://extensions - Brave:
brave://extensions
- Chrome:
- Enable Developer mode (toggle in top-right corner)
- Click Load unpacked
- Select the
ANGELfolder - The extension icon should appear in your toolbar
- Download or clone this repository
- Open Firefox and navigate to
about:debugging#/runtime/this-firefox - Click Load Temporary Add-on
- Select the
manifest.jsonfile from theANGELfolder
โ ๏ธ Note: Firefox temporary extensions are removed when the browser closes. For permanent installation, the extension needs to be signed by Mozilla.
- Navigate to Instagram Reels (
instagram.com/reels/) - A floating control panel appears in the top-right corner (auto-hides after 3s)
- Hover over the panel to reveal controls, or use keyboard shortcuts
- Theater Mode (
T): Dims surrounding UI for focused viewing while keeping scroll - Fullscreen (
F): True browser fullscreen for immersive experience - Rotate (
R/L): Perfect for landscape videos on portrait phones or vice versa - Aspect Ratio (
A): Cycle through modes to find the best fit for your screen - The control panel is draggable - position it wherever you like!
- Dims Instagram's UI (header, sidebar, comments)
- Elevates the video for focused viewing
- Scrolling still works - navigate between reels naturally
- UI elements become visible on hover
- Perfect for browsing while minimizing distractions
- Uses native Browser Fullscreen API
- Completely hides all Instagram UI
- Best for watching a single reel in immersive mode
- Press
EscorFto exit
- Portrait videos on landscape monitors - Rotate 90ยฐ and use Fill/Fit aspect ratio
- Ultrawide monitor viewing - Maximize video with 16:9 or Fill mode
- Distraction-free browsing - Theater mode hides UI while you scroll through reels
- Immersive single-reel viewing - True fullscreen for the best experience
- Content creators - Preview how rotated/cropped content looks
- Accessibility - Zoom in on content for better visibility
- Content Script Injection - Injects rotation controls via CSS/JS
- IntersectionObserver - Efficiently detects which video is currently visible
- MutationObserver - Detects new videos during SPA navigation
- CSS Transforms - Hardware-accelerated rotation, scaling, and translation
- Fullscreen API - Native browser fullscreen for best performance
- Smart Scaling - Calculates optimal scale based on rotation and aspect ratio
This extension requires minimal permissions:
| Permission | Purpose |
|---|---|
host_permissions: instagram.com |
Access Instagram pages to inject controls |
No permissions for:
- โ Browsing history
- โ Cookies
- โ Storage
- โ Network requests
- โ Other websites
ANGEL/
โโโ manifest.json # Extension manifest (Manifest V3)
โโโ content.js # Main content script (rotation, zoom, modes)
โโโ styles.css # UI styles, theater mode, animations
โโโ popup.html # Extension popup UI
โโโ popup.js # Popup logic
โโโ icons/ # Extension icons
โ โโโ icon.svg # Source SVG
โ โโโ icon16.png
โ โโโ icon32.png
โ โโโ icon48.png
โ โโโ icon128.png
โโโ README.md
ANGEL is 100% privacy-friendly:
- โ No data collection
- โ No analytics or tracking
- โ No external network requests
- โ No user accounts required
- โ All processing happens locally in your browser
- โ Open source - audit the code yourself!
- Make sure you're on
instagram.com/reels/or a specific reel URL - Try refreshing the page
- Check if the extension is enabled in your browser's extension settings
- The panel auto-hides after 3 seconds - move your mouse to the right edge
- Ensure the video has loaded and is playing
- Click on the video first to focus it
- Try using the on-screen buttons instead of keyboard shortcuts
- Instagram frequently updates their class names
- Theater mode dims UI elements, hover over them to reveal
- Try combining with zoom for better viewing
- Some browsers require a user gesture (click) before allowing fullscreen
- Disable any other fullscreen extensions that might conflict
- Try the keyboard shortcut
Fwhile hovering over the video
- Make sure to hold
Shiftwhile scrolling - Your cursor should be over the Instagram page
- Use the slider in the control panel as an alternative
Contributions are welcome! Please feel free to submit issues and pull requests.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see below:
MIT License
Copyright (c) 2026 ANGEL
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
- Save preferences per-reel or globally
- Custom keyboard shortcut configuration
- Picture-in-Picture mode support
- Video speed controls
- Firefox Add-on Store release
If you find this extension useful, please consider:
- Starring the repository โญ
- Sharing with friends who watch Instagram Reels
- Reporting bugs or suggesting features
Made with โค๏ธ for a better Instagram Reels experience