Skip to content

Roadmap

konnatoad edited this page Jun 25, 2026 · 9 revisions

Konserve Roadmap

This page outlines planned features, improvements, and areas of development for Konserve.


Getting ready for v0.2.0

The v0.2.0 release is the next major milestone for Konserve.
This version focuses on adding real compression support and expanding platform compatibility.

What v0.2.0 Will Bring

  • .tar.gz compression
    Selectable compression levels (Fast, Normal, Maximum).

  • Improved Linux support
    Ensure backups and restores work smoothly on Linux systems, including path adjustments and file dialog stability.

  • General polish
    Stability improvements and minor UI refinements.

v0.2.0 Checklist

  • Implement .tar.gz compression

    • Write compression logic
    • Integrate with backup.rs
    • Add UI toggle for compression level
  • Improve Linux support

    • Fix path adjustments for Linux home directories
    • Test restore logic on Linux
  • General polish

    • Add proper error messages for backup/restore failures
    • Review UI spacing and labels for clarity
    • Ensure GUI file pickers work reliably
  • Docs

    • Add crate-level documentation (using cargo doc)
    • Document core modules (backup, restore, helpers)
    • Ensure public structs, enums, and functions are documented

Core Goals

  • Keep Konserve simple, portable, and user-friendly
  • Avoid unnecessary dependencies or complexity
  • Ensure backups can always be restored even without Konserve

Planned Features

Backup

  • Optional compression (.tar.gz) with selectable levels
  • File size summary — show total size before backup
  • Default backup location (persistence)
  • Backup name modes (timestamp or fixed custom name)

Restore

  • Conflict resolution (Prompt, Overwrite, Skip, Rename)
  • Show estimated total size of restore selection

Templates

  • Autoload last used template at startup

Logging / Updates

  • Verbose logging (debug output to file)
  • Crash logging (errors and panics logged to konserve-crash.log)
  • Check for updates at startup

UI/UX

  • Settings tab
    • Default backup location selector
    • Backup name mode (timestamp / fixed name)
    • Conflict resolution mode (Prompt, Overwrite, Skip, Rename)
    • Save to exe directory toggle
    • Enable verbose logging
    • File size summary toggle (WIP — UI only)
    • Check for updates on startup (WIP — UI only)
    • Autoload last used template (WIP — UI only)

Technical

  • Cross-platform support (macOS/Linux)
  • Plugin support for custom backup logic (e.g. browser profiles, game configs)
  • Built-in updater (check for new GitHub releases)
  • Optimized release binary size
  • Config support with auto load on startup
  • App conflict detection (detects locked apps before backup)

Stretch Goals

  • Built-in validator to check integrity of a backup archive

Recently Completed

  • Conflict resolution on restore (Prompt, Overwrite, Skip, Rename)
  • App conflict detection — prompt to close or skip locked apps before backup
  • Crash logging and panic hook
  • Verbose debug logging to file
  • Status bar consistency fixes
  • Backup name modes (timestamp / fixed name with overwrite prompt)
  • Path auto-adjustment for user profile changes
  • UUID mapping with fingerprint
  • Tree-view UI for restore selection
  • Template system for reusable backup sets
  • Progress bar and loading spinner

Clone this wiki locally