Files
imajviewer/README.md
T
Alhan 8a80cba116
Build & Release / build-linux (push) Canceled after 0s
Build & Release / build-windows (push) Canceled after 0s
Build & Release / create-release (push) Canceled after 0s
chore: point README at Gitea releases; build-windows.ps1 mirrors pubspec version
2026-10-31 00:14:47 +03:00

4.3 KiB
Raw Permalink Blame History

imajViewer

License: MIT

Releases

Ultra-lightweight image viewer written in Flutter — Linux & Windows.

imajViewer

Features

  • Formats: PNG, JPEG, JFIF, WebP, BMP, GIF, WBMP
  • Pan: Left drag
  • Zoom: Mouse wheel — 10% per step, cursor-centered (viewport-centered in rotate mode); hold Ctrl for fine zoom (1% per step)
  • Fill/Fit toggle: Double left click
  • Contrast: Right drag + vertical move
  • Saturation: Ctrl + Right drag + vertical move
  • Brightness: Ctrl+Shift + Right drag + vertical move
  • Rotate: Shift + Right drag + vertical move (~100px = 90°)
  • Flip horizontally: Ctrl+R — mirrors the view and clears the active effects (same reset as double right click); press Ctrl+R again to undo. Also matches the physical R key position, so keymaps that report the R key as a different character still work
  • Reset (all effects): Double right click
  • Navigation arrows: bottom corners, visible on hover
  • Settings (gear): sort by time/name, print, shortcut info
  • Print: send the image to a printer (A4, fit)
  • Save visible area: title bar save icon or Ctrl+S — the on-screen region is written at original resolution as JPEG (quality 95) next to the source file (photo.jpg → photo_143025.jpg); active effects (contrast/saturation/brightness), rotation and horizontal flip are baked into the output; if that name already exists, nothing is written and a warning is shown
  • Drag & drop to open images
  • Window size/position memory (JSON persistence)
  • Set as default image viewer
  • Cascade placement for new windows
  • Taskbar grouping (Linux: StartupWMClass)

Install

No Flutter SDK needed — grab the latest .deb from the Releases page:

sudo dpkg -i imajviewer_*_amd64.deb
sudo apt-get install -f  # install missing dependencies, if any

After install, open an image with xdg-open <file> or double-click it.

Windows (installer)

Download imajviewer_setup_*.exe from the Releases page and run it. The installer:

  • Installs to Program Files
  • Adds a Start Menu shortcut (optional desktop shortcut)
  • Registers file associations (PNG, JPG, JPEG, WebP, BMP, GIF)
  • Supports uninstall (Settings > Apps)

Build from source

Requirement Notes
Flutter SDK stable channel
Linux: GTK dev libs libgtk-3-dev, ninja-build, clang, cmake
Windows: VS 2022 Build Tools "Desktop development with C++" workload
flutter pub get
flutter build linux    # Linux
flutter build windows --release   # Windows

Linux output: build/linux/x64/release/bundle/ Windows output: build\windows\x64\runner\Release\ (portable: copy the whole folder including imajviewer.exe and all DLLs).

Keyboard & Mouse Shortcuts

Interaction Action
Left drag Pan
Mouse wheel Zoom (cursor-centered, 10% per step)
Ctrl + Mouse wheel Fine zoom (1% per step)
Double left click Fill / Fit toggle
Right drag + vertical Contrast (0.0 – 2.0)
Ctrl + Right drag + vertical Saturation (0.0 – 2.0)
Ctrl+Shift + Right drag + vertical Brightness (-100 – 100)
Shift + Right drag + vertical Rotate (free)
Ctrl + R Flip horizontally (clears effects; press again to undo)
Double right click Reset (all effects)
Left / Right arrow Previous / next image
Ctrl + O Open file
Ctrl + S Save visible area (JPEG 95, original resolution)
Esc Exit fullscreen
Ctrl + Q Close window
Ctrl + Shift + Q Close all windows

Releases

Installers are published on the Gitea Releases page:

  • Linux .deb — flutter build linux --release + bash dist/rebuild-deb.sh
  • Windows installer — on a Windows machine: .\build-windows.ps1 (Flutter + VS 2022 Build Tools + Inno Setup 6)

Development

flutter pub get
flutter analyze
flutter test

To rebuild the .deb locally:

flutter build linux --release
bash dist/rebuild-deb.sh

License

MIT