A fast, lightweight Windows image viewer by CyberGems. Open images, browse folders, zoom and pan, and perform light edits such as rotate, crop, resize, and color adjustments. Built with Electron 35 and vanilla JavaScript, CyberViewer delivers a modern, dark-themed "cyber" UI with neon accents.
Free and open source (GPLv3): no ads, no tracking, and no data collection. Just enjoy it.
Most image viewers are either bloated with features you never use or so barebones they feel like an afterthought. CyberViewer strikes the perfect balance: instant loading, smooth browsing, and essential editing tools, all wrapped in a sleek, distraction-free interface.
| Need | Solution |
|---|---|
| Open images instantly | Streaming cvlocal:// protocol with no full RAM load, even for large files |
| Browse a whole folder | Thumbnail sidebar with lazy loading and radar scan progress |
| Quick edits without Photoshop | Rotate, crop, resize, flip, adjust brightness/contrast/saturation/blur |
| Immersive viewing | Fullscreen mode with auto-hiding UI, slideshow with loop |
| Set the desktop wallpaper | Fill, Fit, Center, or Span the current image across Windows |
| Stay in your workflow | System tray, recent images, auto-start, global hotkey, Explorer context menu |
| Bilingual (EN / ES) | Complete UI localization with instant language switching |
- Lightning-fast open: custom streaming protocol loads images without hogging RAM
- Supported formats: JPG, JPEG, PNG, GIF, WebP, BMP, TIFF, TIF, ICO, and AVIF
- Folder browsing: thumbnail sidebar with lazy loading, priority queue, and scan progress indicator
- Zoom and pan: 5% to 2000%, fit-to-window, original size (1:1), mouse wheel, and drag
- Animated GIF support: toggle playback on or off
- Fullscreen immersive mode: ghost UI auto-hides for distraction-free viewing
- Drag and drop: drop images or folders directly onto the window
- Clipboard paste: paste images from the clipboard (
Ctrl+V)
- Rotate: left 90Β° (
Q) or right 90Β° (E) with save/discard workflow - Crop: interactive overlay with handles and optional create-copy mode
- Resize: width and height controls with aspect lock, presets (720p, 1080p, 25%, 50%, 200%), and quality resampling
- Adjust: brightness, contrast, saturation, blur, grayscale, and invert with live A/B preview
- Flip: horizontal (
H) or vertical (Shift+H)
- Start, pause, and stop controls with a dedicated HUD
- Configurable interval: 2s, 3s, 5s, or 10s
- Loop mode for the current folder
- Option to enter fullscreen on start
- Save (overwrite) or Save As
- Copy the image to the clipboard (
Ctrl+C) or copy its file path - Move to trash (
Delete) - Show in folder or open the containing folder
- Export to PDF and Print with page size, orientation, and margin controls
- Set as wallpaper with Fill, Fit, Center, or Span styles
- Favorites with dedicated add, remove, and view actions
- Recent history with up to 10 files and 10 folders
- System tray: custom HTML popup menu with recent images, plus minimize/close-to-tray behavior
- Auto-start with Windows: launch minimized on sign-in
- Global hotkey: configurable show/hide shortcut, default
Alt+Shift+V - Explorer context menu: right-click supported images to open them in CyberViewer
- File associations: set CyberViewer as the default viewer for JPG, PNG, GIF, WebP, BMP, TIFF, ICO, or AVIF
- Multiple instances: optional mode for power users
- Auto-update: built-in GitHub Releases updater with silent install
- Settings backup: export or import configuration and favorites as JSON
- Accent colors: Cyan, Pink, Green, Orange, Violet, Blue, Red, and Mint
- Background styles: Checker-dark, Checker-light, or Solid
- Interface tweaks: sidebar, toolbar, status bar, tooltips, shortcut guide, auto-hide delays, and double-click behavior
- Tabbed settings: General, Appearance, Interface, Slideshow, System, and Backup & Data
- Platform: Windows 10 / 11 (x64)
- Framework: Electron 35.5.1 + vanilla JavaScript
- Security:
contextIsolation: true,nodeIntegration: false, customcvlocal://protocol with path allowlist, CSP headers - UI: Custom frameless window, DWM-rounded corners, multi-monitor DPI-aware
CyberViewer/
βββ main.js Electron main process: IPC, tray, protocol, and window management
βββ preload.js contextBridge β window.electronAPI (secure IPC)
βββ tray-preload.js Tray menu preload
βββ CyberViewer.html Shell markup (all UI modals/menus)
βββ tray-menu.html Custom tray popup
βββ css/app.css Styles
βββ js/
β βββ app.js Renderer UI logic
β βββ media-helpers.js Pure helpers (mediaUrl, canvasExport, filters)
βββ lib/ Shared Node helpers
β βββ paths.js Path normalization, allowlist, MIME types
β βββ thumb-cache.js Thumbnail caching/eviction
β βββ window-bounds.js Window bounds clamping/DPI awareness
β βββ updater.js electron-updater integration
β βββ settings-backup.js Import/export settings
βββ i18n/
β βββ menu.json Menu, tray, and dialog strings (EN/ES)
β βββ ui.json Renderer UI strings (source of truth)
β βββ ui.js Generated loader (npm run i18n:sync)
βββ assets/ Icons
βββ test/ Node unit tests
- Node.js LTS β https://nodejs.org
- Windows 10/11 (x64)
cd C:\path\to\CyberViewer
npm install
npm startnpm test
npm run lint
npm run i18n:sync # regenerate i18n/ui.js from i18n/ui.jsonnpm run build # NSIS installer + portable
npm run build:portable # portable only| Artifact | Description |
|---|---|
CyberViewer-Setup-<version>.exe |
NSIS installer |
CyberViewer-Portable-<version>.exe |
Portable build |
- Optional "Set CyberViewer as default image viewer" (checked by default)
- Per-user (HKCU) file associations
- Desktop/Start Menu shortcuts
- Bilingual installer (en_US, es_ES)
Windows may show a SmartScreen warning the first time you run the CyberViewer installer: this is an unsigned hobby app, so Windows hasn't built reputation for the file yet. This is expected; the source is public so you can inspect exactly what it does. The same can appear when launching the portable build.
To continue:
- Click More info.
- Click Run anyway.
| Key | Action |
|---|---|
Ctrl+O |
Open image |
Ctrl+Shift+O |
Open containing folder |
Ctrl+Shift+F |
Open folder |
Ctrl+S |
Save As |
Ctrl+P |
Print / Export PDF |
Ctrl+C |
Copy image to clipboard |
Ctrl+V |
Paste image from clipboard |
Ctrl+D |
Toggle favorite |
Ctrl+, |
Open settings |
Ctrl+I |
Properties |
β β β β / A D |
Navigate images |
Space |
Next image (or play/pause slideshow) |
Q / E |
Rotate left / right 90Β° |
C |
Crop |
R |
Resize |
J |
Adjust (color/tone) |
H / Shift+H |
Flip horizontal / vertical |
F |
Fit to window |
1 |
Original size (1:1) |
Enter / G |
Toggle fullscreen |
S |
Start/pause slideshow |
Delete |
Move to trash |
+ / - |
Zoom in / out |
0 |
Fit to window |
Esc |
Close overlays/modals/cancel crop |
webSecurityenabled with Content-Security-Policy- Local images served through
cvlocal://protocol (streamed) with path allowlist - Allowlist expansion only accepts existing image files
- Folder scans only run for neighbors of an existing image file
- Renderer runs with
nodeIntegration: falseandcontextIsolation: true - DevTools IPC disabled in packaged builds
Installed (NSIS) builds use electron-updater against GitHub Releases:
- About β Check for Updates (or menu Help)
- Download update when a newer version is available
- Install & restart: silent install, no wizard, and automatic relaunch
Download/install is always user-requested. With "Check for updates on startup" enabled (default), the app notifies on startup that an update exists (toast + About banner), but will not download until you ask.
Portable builds cannot self-update in-app; use Open releases page.
Iβve spent countless hours building and refining CyberViewer for my own use. I recently decided to share it with the world as part of the CyberGems set of free and open-source tools.
If youβd like to support future updates, Iβd truly appreciate it. You can also show your support by starring the repo on GitHub. Thank you! π
Crypto donations (BTC, ETH, USDT, LTC): click to view addresses
β οΈ Send only the selected asset on the indicated network. Using the wrong network will result in permanent loss of funds.
CyberViewer is distributed under the terms of the GNU General Public License v3.0. See LICENSE for the full license text.
Copyright (C) 2026 CyberGems
For frequently asked questions, troubleshooting guides, and detailed configuration instructions, visit the FAQ or the online documentation.
Made by CyberGems
More free, open-source, privacy-first apps from CyberGems:
| App | Description |
|---|---|
| πΒ CyberClock | Desktop clock with analog & digital display, calendar, timer, stopwatch and relaxation module. |
| π’Β CyberFeeds | High-performance, local-first RSS and Atom reader built for speed, privacy and clean reading. |
| πΒ CyberLauncher | Windows application launcher with hot corners, scheduler, system monitor and integrated terminal. |
| π»Β CyberManager | Lightweight, high-performance task manager, virtualized and NT-native, a powerful Task Manager alternative. |
| πΒ CyberNotes | Privacy-focused note-taking app with rich text, folders, tabs and bcrypt-protected local storage. |
| β‘Β CyberPaste | Privacy-first clipboard manager for text, code, images, HTML and files. |
| πΈΒ CyberSnap | Screen capture and annotation suite with vector tools, high-speed OCR, screen recording and color picker. |
| βΒ CyberTray | High-performance tray launcher with hotspots, system monitoring, process manager and PIN-protected file vault. |
| π‘οΈΒ CyberWall | User-friendly Windows firewall with real-time per-app rules powered by the WFP kernel engine. |



