Skip to content

NH Reader v0.7.0

Choose a tag to compare

@PhantomNimbi PhantomNimbi released this 01 Oct 17:46
· 72 commits to main since this release

NH Reader v0.7.0

Release date: 2026-10-01

✨ Highlights

NH Reader v0.7.0 is our largest multi-platform and ergonomics release to date! This release introduces an integrated custom title bar with per-OS tailored window controls (native traffic lights on macOS and compact squircle-framed controls on Windows and Linux), restores system tray integration with minimize-to-tray on close, adds configurable reader preload buffering, an image quality selector, and a direct CBZ export button directly in the reader toolbar.

Furthermore, v0.7.0 ships all 17 community language packs with 100% key parity (279/279 keys) and full Arabic RTL layout polish, standalone portable archives for Windows, macOS, and Linux with universal launcher scripts, in-repo documentation with in-page live translation, and a hardened CI release pipeline featuring dedicated Android split APKs and true dry-run verification.

🚀 Key Improvements & Features

  • Custom Title Bar & Per-OS Window Controls — Integrated title bar across all desktop platforms with native macOS traffic lights and framed squircle controls (24×22px, 5px radius) for Windows and Linux. Highlight colors respect custom Linux desktop themes.
  • Configurable Window Controls Positioning — Added windowControlsPosition setting (Auto, Left, Right) under Appearance settings in Settings, allowing full customization for Linux desktop environments.
  • Restored System Tray & Minimize-to-Tray on Close — Closing the main window cleanly hides the app into the system tray without interrupting background services, while preserving complete termination via the tray menu.
  • Reader Preload Buffer (1–5 Pages) — Configurable reader slice buffering ahead and behind for instant, zero-latency page transitions.
  • Image Quality Selector — Quick toggle between Original (High) (full-resolution streaming) and Data Saver (Fast) (compressed preview thumbnails) with Q hotkey in reader.
  • Direct CBZ Export from Reader Toolbar — One-click CBZ export button in reader toolbar (E hotkey) with background worker queue integration and live progress tracking.
  • All 17 Language Packs at 100% Parity — Complete hand-rolled translations for ar, de, es, fr, id, it, ja, ko, nl, pl, pt, ru, th, tr, vi, zh-CN, and zh-TW (279/279 keys each).
  • Arabic RTL Layout Polish (M9.2 RTL Phase) — Reactive dir="rtl" support, native Arabic font typography fallbacks (Segoe UI Arabic, Noto Sans Arabic, Tahoma), mirrored slide-in drawer animations, mirrored switch toggles, and RTL form alignments.
  • Standalone Multi-Platform Portable Packages — Platform-native portable archives (NHReaderPortable_Windows_x64.zip, nh-reader_portable_linux_x86_64.tar.gz, NHReaderPortable_macOS.zip) sharing .portable markers and isolated ./data/ folders with universal launcher scripts.
  • CI Workflow Stabilization & Dedicated Android Split APKs — Decoupled release publishing into an atomic downstream publish-release job, dedicated package-android job building separate split APKs per architecture (aarch64, armv7, x86_64), pre-installed NDK auto-discovery, true dry-run mode, and optional test pre-release support.
  • In-Repo Documentation with Live Translation — Migrated documentation into repository docs/ folder with interactive in-page Google Translate widget supporting all 18 languages.

✅ Changed

  • Bumped project version to 0.7.0 across package.json, Cargo.toml, tauri.conf.json, Cargo.lock, and documentation.
  • Upgraded CI packaging workflow to Node.js 26 (actions/setup-node@v4), matching local development runtime.
  • Pinned per-platform Tauri configuration overlays (tauri.<platform>.conf.json).
  • Consolidated all post-v0.6.0 developments directly into v0.7.0 (skipping unreleased 0.6.1).

🐛 Fixed

  • Window Close Lifecycle — Restored minimize-to-tray on close so background downloads and services continue uninterrupted.
  • CI Release Race Conditions — Decoupled asset publishing from parallel matrix runners into a single atomic downstream job, preventing concurrent release creation failures.
  • NSIS Dark Contrast — Coordinated text and background colors in NSIS installer hooks to prevent unreadable dark text on dark installer pages.
  • Android Runner NDK Resolution — Dynamically resolved pre-installed NDK paths in GitHub Actions runners, eliminating brittle manual sdkmanager re-downloads.

📦 Install & Upgrading

Download the installer or package for your platform from the Assets section below:

  • Windows (NSIS Setup): NH Reader_0.7.0_x64-setup.exe
  • Windows (WiX MSI): NH Reader_0.7.0_x64_en-US.msi
  • Windows (Portable ZIP): NHReaderPortable_Windows_x64.zip
  • macOS (DMG): NH Reader_0.7.0_x64.dmg
  • macOS (Portable ZIP): NHReaderPortable_macOS.zip
  • Linux (Debian): nh-reader_0.7.0_amd64.deb
  • Linux (AppImage): nh-reader_0.7.0_amd64.AppImage
  • Linux (Portable Tarball): nh-reader_portable_linux_x86_64.tar.gz
  • Android (Split APK - ARM64): nh-reader_0.7.0_arm64-v8a.apk (community-supported / untested)
  • Android (Split APK - ARMv7): nh-reader_0.7.0_armeabi-v7a.apk (community-supported / untested)
  • Android (Split APK - x86_64): nh-reader_0.7.0_x86_64.apk (community-supported / untested)

Upgrade in place: run the new installer over your existing installation. Your SQLite database (database.sqlite), favorites, reading history, downloaded archives, and settings carry over automatically.

Verification

  • cargo check + cargo test (src-tauri) — passed (7/7)
  • npm run check (svelte-check) — 0 errors, 0 warnings
  • npm run i18n:check — 279/279 keys validated across all 18 packs
  • npm run check:agents — passed, 0 violations