Skip to content

Latest commit

Β 

History

237 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

CyberViewer logo

CyberViewer β€” A modern, feature-packed image viewer for Windows

Download Latest ReleaseWindows 64-bit Β All Releases

LicenseΒ  PlatformΒ  ElectronΒ  Wiki

A fast, lightweight Windows image viewer by CyberGems β€” open, browse folders, zoom/pan, and perform light edits (rotate, crop, resize, adjust colors). Built with Electron 35 and vanilla JavaScript, it 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.


🎯 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 β€” 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
Stay in your workflow System tray, 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
  • Folder browsing β€” thumbnail sidebar with lazy loading, priority queue, and scan progress indicator
  • Zoom & pan β€” 5% to 2000%, fit-to-window, original size (1:1), mouse wheel + drag
  • Animated GIF support β€” toggle playback on/off
  • Fullscreen immersive mode β€” ghost UI auto-hides for distraction-free viewing
  • Drag & drop β€” drop images or folders directly onto the window
  • Clipboard paste β€” paste images from clipboard (Ctrl+V)

✏️ Editing

  • Rotate β€” left 90Β° (Q) / right 90Β° (E) with save/discard workflow
  • Crop β€” interactive overlay with handles, optional create-copy mode
  • Resize β€” width/height with aspect-lock, presets (720p, 1080p, 25%, 50%, 200%), quality resampling
  • Adjust β€” brightness, contrast, saturation, blur, grayscale, invert β€” with live A/B preview
  • Flip β€” horizontal (H) / vertical (Shift+H)

🎬 Slideshow

  • Start/pause/stop with dedicated HUD
  • Configurable interval (2s, 3s, 5s, 10s)
  • Loop mode
  • Option to enter fullscreen on start

πŸ“ File Operations

  • Save (overwrite) / Save As
  • Copy image to clipboard (Ctrl+C) or copy file path
  • Move to trash (Delete)
  • Show in folder / open containing folder
  • Export to PDF and Print (page size, orientation, margins)
  • Favorites β€” mark and filter favorite images
  • Recent history β€” last 8 files/folders

βš™οΈ System Integration

  • System tray β€” custom HTML popup menu, minimize/close-to-tray
  • Auto-start with Windows β€” launch minimized on boot
  • Global hotkey β€” toggle show/hide (default: Alt+Shift+V)
  • Explorer context menu β€” right-click images to open in CyberViewer
  • File associations β€” set as default viewer for JPG, PNG, GIF, WEBP, BMP, TIFF
  • Multiple instances β€” optional, for power users
  • Auto-update β€” built-in GitHub Releases updater with silent install
  • Settings backup β€” export/import configuration as JSON

🎨 Customization

  • Accent colors β€” Cyan, Pink, Green, Orange
  • Background styles β€” Checker-dark, Checker-light, Solid
  • Interface tweaks β€” sidebar, statusbar, tooltips, hints, auto-hide delays, double-click behavior
  • Tabbed settings β€” General, Appearance, Interface, Slideshow, System

πŸ› οΈ 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, 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/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

Build (Production)

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

Outputs (in dist/)

Artifact Description
CyberViewer-Setup-1.13.0.exe NSIS installer
CyberViewer-Portable-1.13.0.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:

  1. Click More info.
  2. Click Run anyway.

⌨️ 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, auto-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.


❓ Frequently Asked Questions

What image formats does CyberViewer support?

JPG Β· JPEG Β· PNG Β· GIF Β· WEBP Β· BMP Β· TIFF

Can I set CyberViewer as my default image viewer?

Yes. The NSIS installer includes an option (checked by default) to register per-user file associations. You can also enable the in-app Context Menu option or use Windows Settings β†’ Apps β†’ Default apps.

Does CyberViewer work on Windows 11?

Yes. CyberViewer supports both Windows 10 and Windows 11 (x64).

What's the difference between the installer and portable version?

Installer Portable
File associations βœ… (optional) ❌
Auto-update βœ… (electron-updater) ❌ (manual download)
Start Menu shortcuts βœ… ❌
Requires installation βœ… ❌

Can I customize the appearance?

Yes. Go to Settings β†’ Appearance to change the accent color (Cyan, Pink, Green, Orange) and background style (Checker-dark, Checker-light, Solid). The Interface tab offers additional tweaks for sidebar, statusbar, tooltips, and auto-hide behavior.

How do I contribute?

Pull requests are welcome! Please ensure your changes pass npm test and npm run lint before submitting.


❀️ Donate

CyberViewer is one of the gems in CyberGems, a personal suite I've spent thousands of hours building and refining for my own use. I've decided to share the whole suite with the world β€” completely free and open-source.

If you'd like to support this work, a donation would mean a lot. 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


Thanks for using CyberViewer! πŸŽ‰

Made by CyberGems

About

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

Topics

Resources

Stars

3 stars

Watchers

2 watching

Forks

Releases

Contributors

Languages