Skip to content

Releases: Crazygiscool/Lumen

v2.3.5

Choose a tag to compare

@Crazygiscool Crazygiscool released this 18 Jul 22:08

"Illuminate your inner world. Write in light. Store in silence."


What's New Since v2.2.3

Windows & macOS Support

  • Windows installer — One-click setup via Inno Setup (.exe) or portable ZIP
  • Windows dev workflowlumen.bat builds core + TUI, detects Flutter, supports --dev and --tui flags
  • GUI launcher — Running lumen.exe with no args auto-launches the Flutter GUI; falls back to TUI if not found
  • Cross-platform build pipelinescripts/build_windows.bat builds Rust, Flutter, and packages both ZIP and installer
  • macOS .app bundlescripts/build_macos.sh produces a native macOS application

Entry System

  • 5 entry types — Journal, Note, Task, Project, and Custom (user-defined labels)
  • Rich metadata — Each entry carries timestamps, edit history (EditRecord), provenance (author, plugin origin, feedback), mood, tags, and arbitrary JSON metadata
  • Folders — Organize entries into hierarchical folders with drag-reorder
  • Recurring tasks — Define repeating tasks with configurable intervals (every N days or specific day of week)
  • Task management — Status tracking (todo/in-progress/done), priority levels, due dates, parent project linking
  • Pin entries — Pin important entries to the top of any list

Encryption & Security

  • AES-256-GCM encryption — Every entry body is encrypted at rest in SQLite
  • Argon2id key derivation — Per-entry salt + nonce for defense in depth
  • Password vault — Optional master password protects the entire vault; session key used when no password is set
  • Lock screen — App locks on minimize/inactivity; unlock with password

Storage

  • SQLite with WAL mode — Fast, concurrent reads with a single-file database
  • FTS5 full-text search — Full-text index on entry body, title, tags, and author
  • Asset storage — Attach files to entries (encrypted, with per-file nonce + salt)
  • Data location~/.config/Lumen/lumen.db (auto-migrated from legacy ~/.local/share/lumen/)

Import & Export

  • Markdown export — Export entries as Markdown files with YAML frontmatter
  • JSON/ZIP import — Bulk import from JSON or ZIP archives
  • Stoic journal importer — Import entries from the Stoic journal app (JSON and ZIP formats)

Plugins

  • Plugin system — Load external plugins from ~/.config/Lumen/plugins/ via libloading
  • Built-in plugins:
    • export_md — Markdown export with frontmatter
    • daily_summary — Generate daily entry summaries
    • wordcount — Word count statistics
  • Plugin manifests — TOML-based plugin configuration with versioning

Flutter GUI

  • 19 screens — Home, Journal list, Note list, Task list, Board (Kanban), Mind map, Project list/detail, Entry view/edit, New entry, Quick note, Search results, Settings, Setup, Lock screen, Sync settings, Export/Import, Stoic import, Plugin config
  • Kanban board — Drag-and-drop task management by status
  • Mind map — Visual entry relationship view
  • Gantt chart — Project timeline visualization
  • Quick add bar — Fast entry creation from anywhere
  • Streak widget — Visual journaling streak tracker
  • Vault switcher — Switch between vault contexts
  • Dark-only theme — Deep obsidian/charcoal palette with Geist typography
  • Localization — English, Spanish, French

Terminal UI (TUI)

  • CLI commandslist, search, view <id>, streak
  • Interactive mode — Ratatui-based full-screen TUI with keyboard navigation
  • Launched vialumen.exe interactive or cargo run --bin lumen-tui

Sync

  • SQLite-to-SQLite sync — Bidirectional sync between local databases with conflict resolution
  • Conflict detection — Tracks sync state and resolves competing edits

Installation

Windows

# Installer
Lumen-windows-v2.3.5-setup.exe

# Portable
unzip Lumen-windows-v2.3.5.zip

Linux (AUR)

yay -S lumen-journal

macOS

./scripts/build_macos.sh

From Source

cargo build --release
cd ui && flutter build windows   # or linux/macos

Technical Details

Version 2.3.5
Rust edition 2021
Flutter 3.44.6+
Dart SDK ^3.9.0
Encryption AES-256-GCM + Argon2id
Database SQLite 3 (bundled, WAL mode, FTS5)
Platforms Linux, macOS, Windows
License Personal/educational/research use; commercial use requires written permission

Full Changelog: v2.3.4...v2.3.5

🔦 Lumen v2.2.3 — Release Notes

Choose a tag to compare

@Crazygiscool Crazygiscool released this 10 Jun 01:19

Lumen has evolved from a standalone journaling engine into a multi-user productivity platform. This release introduces secure multi-author profiles, a powerful terminal interface, and a significant expansion of the Stoic import engine.

👥 Multi-User & Permission System

  • Role-Based Access Control: Introduced a native permission system with Admin and Member roles.
    • The first user registered in a vault is automatically assigned the Admin role.
    • Members have full access to their own journals but are restricted from vault management tasks.
  • User Profiles: Support for multiple authors within a single vault. Select your profile at login or switch securely within an active session.
  • Secure Switching: User switching and registration are now protected by the vault's master password, even if the application is already unlocked.
  • Auto-Login: Automatically "logs in" the selected user profile upon master unlock for a seamless entry experience.

💻 Lumen TUI (Terminal Interface)

  • CLI Client: Introducing lumen-cli, a native terminal companion for headless access to your vault.
  • Search & View: List, search (metadata-based), and view decrypted entries directly from your terminal.
  • Streak Tracking: Quickly check your journaling consistency with the lumen streak command.
  • Secure Decryption: Full Argon2/AES-GCM decryption support within the CLI (password-protected).

📥 Enhanced Stoic Importer

  • Routine Support: The importer now captures the bulk of Stoic data stored in routines.json, including Morning and Evening reflections.
  • Intelligent Mapping: Automated mapping of over 4,000+ Stoic "Answers" to their respective routines and journal entries.
  • Author Mapping: Choose which specific Lumen user profile should own the imported data.
  • Visual Feedback: Real-time progress bars for large-scale data imports.

🏛️ Storage & Architecture

  • SQLite Migration: Fully transitioned from bincode serialization to a robust SQLite backend for improved performance and atomicity.
  • FTS5 Search: Integrated SQLite Full-Text Search (FTS5) for blazing-fast indexing of entry metadata and plaintext titles.
  • Encrypted Assets: A new binary storage system for attachments (images, audio) linked securely to journal entries.

🎨 UI & UX Refinements

  • Modern Typography: Switched to the Geist font family for a cleaner, high-contrast reading experience.
  • Global Progress Bars: Added LinearProgressIndicator to all long-running operations (Sync, Save, Search, Decrypt).
  • Localization: Full support for English, Spanish, and French via ARB files.
  • Identity Badges: New sidebar indicators showing the current logged-in author and active vault.

🛡️ Security & Testing

  • Property-Based Testing: Integrated the proptest framework to verify encryption idempotency across thousands of random edge cases.
  • Reproducible Builds: All platform binaries are now compiled using --locked dependencies to ensure supply-chain security.

📦 Included Binaries

This release includes binaries for Linux (tar.gz), macOS (zip), and Windows (zip). Each bundle contains:

  1. Lumen: The main graphical application.
  2. lumen-cli: The new terminal interface tool.

Full Changelog: v1.1.29...v2.2.3

v1.1.29

Choose a tag to compare

@Crazygiscool Crazygiscool released this 24 May 15:05

What's new

  • Linux build scriptscripts/build_linux.sh now produces a complete distributable tarball (Rust cdylib + Flutter bundle)
  • Release automationscripts/release.sh handles version bumping, tagging, and AUR PKGBUILD update in one command
  • AUR package fixed — switched to git source with tag-based checkout (no more expiring tarball URLs); installs full Flutter bundle tree so libflutter_linux_gtk.so resolves at runtime
  • scripts/sync.sh fixed tag version comparison bug and now creates annotated git tags

Installation

AUR: yay -S lumen-journal
Linux (manual): download Lumen-linux-v1.1.29.tar.gz, extract, run ./bundle/Lumen
Build from source: see scripts/build_linux.sh

✨ Lumen Journal — Release 1.1.26

Choose a tag to compare

@Crazygiscool Crazygiscool released this 30 Dec 03:38

A refined, fully‑integrated release of Lumen Journal, the encrypted journaling application built with Rust and Flutter. This update introduces complete Linux desktop integration, improved packaging, and a smoother user experience across the board.


🚀 New Features

  • Desktop launcher integration
    Lumen Journal now includes a .desktop file, allowing it to appear in application menus across GNOME, KDE, XFCE, and other desktop environments.

  • High‑resolution application icon
    A polished 256×256 icon is now bundled, ensuring crisp visuals in menus, docks, and launchers.

  • AppStream metadata support
    Software centers such as GNOME Software and KDE Discover can now display rich metadata for Lumen Journal, improving discoverability and presentation.

  • Man page included
    A new lumen-journal(1) manual page provides quick reference documentation directly from the terminal.

  • Shell completions for Bash, Zsh, and Fish
    Command‑line users now benefit from auto‑completion support across all major shells.


🔧 Improvements

  • AUR‑compliant packaging
    The project now includes a fully compliant PKGBUILD with proper license installation, desktop integration, and clean file structure.

  • Consistent binary naming
    The lumen-journal binary is now installed into /usr/bin with correct permissions and structure.

  • License installation
    The CC‑BY‑NC‑SA‑4.0 license is now correctly installed into /usr/share/licenses/lumen-journal/.

  • Source tarball alignment
    GitHub release tags now match AUR pkgver, ensuring reliable builds via yay, paru, and makepkg.


🛠️ Developer Notes

  • PKGBUILD updated to include all auxiliary files (desktop, icon, metadata, completions, man page, systemd unit).
  • Repository flattened to meet AUR requirements (no subdirectories, no large blobs).
  • Build process simplified using cargo build --release --locked.
  • All auxiliary files included in source array for reproducible builds.

📦 Installation

From AUR

yay -S lumen-journal

Manual build

git clone https://aur.archlinux.org/lumen-journal.git
cd lumen-journal
makepkg -si

Full Changelog: https://github.com/Crazygiscool/Lumen/commits/1.1.26