Skip to content

About

πŸ’« CyberViewer is a lightweight, full-featured image viewer and editor engineered for casual and power users ● Free and open-source.

Topics

Resources

Stars

3 stars

Watchers

2 watching

Forks

Latest commit

Β 

History

332 Commits

Folders and files

Repository files navigation

CyberViewer, a fast image viewer with essential editing tools

Download Latest ReleaseWindows 10/11 (64-bit) Β All ReleasesChangelog

LicenseΒ  PlatformΒ  ElectronΒ  Wiki


What is CyberViewer?

CyberViewer is a fast, lightweight image viewer for Windows that covers everyday viewing and editing without the weight of a full graphics suite. Open large images quickly, browse complete folders through a thumbnail sidebar, zoom and pan smoothly, run slideshows, and manage recent files. Essential tools for rotation, cropping, resizing, flipping, and color adjustment are built in, alongside wallpaper controls and Windows Explorer integration. The interface stays focused, dark, and highly customizable. Built with Electron 35 and vanilla JavaScript.

Free and open source (GPLv3): no ads, no tracking, and no data collection. Just enjoy it.


🎯 Why CyberViewer?

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

✨ Key Features

πŸ–ΌοΈ Viewing

  • 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)

✏️ Editing

  • 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)

🎬 Slideshow

  • 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

πŸ“ File Operations

  • 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 Integration

  • 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

🎨 Customization

  • 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

πŸ› οΈ Tech Stack & Architecture

  • Platform: Windows 10 / 11 (x64)
  • Framework: Electron 35.5.1 + vanilla JavaScript
  • Security: contextIsolation: true, nodeIntegration: false, custom cvlocal:// 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

πŸš€ Getting Started

Prerequisites

Development

cd C:\path\to\CyberViewer
npm install
npm start

Checks and localization

npm test
npm run lint
npm run i18n:sync       # regenerate i18n/ui.js from i18n/ui.json

Build (Production)

npm run build            # NSIS installer + portable
npm run build:portable   # portable only

Outputs (in dist/)

Artifact Description
CyberViewer-Setup-<version>.exe NSIS installer
CyberViewer-Portable-<version>.exe Portable build

NSIS Installer Features

  • 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 SmartScreen

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:

See how to run the installer (step by step)

Windows shows this warning for any installer without a paid code-signing certificate; it does not mean the file is unsafe. Do not click "Don't run":

  1. Run the installer. Windows may show the blue "Windows protected your PC" dialog.

Windows SmartScreen warning

  1. Click the small More info link.

SmartScreen dialog after More info

  1. Click Run anyway. The installer starts normally.

You can verify the file independently: compare the SHA with the GitHub release, scan it on VirusTotal, or build from source. More details: SmartScreen guide on the website.


⌨️ Keyboard Shortcuts

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

πŸ”’ Security

  • webSecurity enabled 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: false and contextIsolation: true
  • DevTools IPC disabled in packaged builds

πŸ”„ Updates

Installed (NSIS) builds use electron-updater against GitHub Releases:

  1. About β†’ Check for Updates (or menu Help)
  2. Download update when a newer version is available
  3. 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.


❀️ Donate

After countless hours building and refining CyberViewer for my own use, I recently decided to share it with the world along with my other open-source tools in CyberGems.

If you’d like to support future updates, I’d truly appreciate it. Your donation helps keep development going, roll out new features, speed up updates and bug resolution, and enhance documentation quality. You can also show your support by starring the repo on GitHub. Thank you! πŸ™

Donate via PayPal

Support me on Ko-fi

Buy Me a Coffee

Crypto donations (BTC, ETH, USDT, LTC): click to view addresses
Asset Address QR
BTC
bc1q5mxzz05nmvsheqzx7970euswta3fksxzcfzag4
BTC QR
ETH
0x79b703Ec0f77493679Fcd280aF3b983E20c580B8
ETH QR
USDT (ERC20 / BEP20)
0x79b703Ec0f77493679Fcd280aF3b983E20c580B8
USDT QR
USDT (TRC20)
TSVbSk1HSyZ1NprCnAYiw56ECwXgH887mD
USDT TRC20 QR
LTC
LWGnEHgcFCE2BRkzLnsdPDD8Y8ZeDK577X
LTC QR

⚠️ Send only the selected asset on the indicated network. Using the wrong network will result in permanent loss of funds.


πŸ“„ License

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


❓ FAQ

For frequently asked questions, troubleshooting guides, and detailed configuration instructions, visit the FAQ or the online documentation.


Thanks for using CyberViewer! πŸŽ‰

Made by CyberGems

Share on Reddit Β Share on X Β Share on Facebook Β Share by Email Β Share on Telegram Β Share on LinkedIn


πŸ”— See also

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.

➑️ Browse all apps at cybergems.org

About

πŸ’« CyberViewer is a lightweight, full-featured image viewer and editor engineered for casual and power users ● Free and open-source.

Topics

Resources

Stars

3 stars

Watchers

2 watching

Forks

Releases

Contributors

Languages