Roadmap

Phase 0 · Foundation & Core

  • Initialize Rust project with dependencies
  • Implement cross-platform OS detection (Linux, Windows, macOS)
  • Create system information gathering module
  • Implement configuration system with JSONC support
  • Build UI rendering engine with crossterm

Phase 1 · System Information Modules

  • OS Name & Architecture display
  • Kernel version detection
  • Hostname resolution
  • Shell detection and display
  • Terminal emulator detection
  • CPU model & frequency information
  • GPU detection (discrete & integrated)
  • Memory and RAM usage display
  • Disk usage statistics
  • Battery status and percentage
  • System uptime calculation
  • Package count for multiple managers (pacman, dpkg, scoop)
  • Desktop Environment / Window Manager detection

Phase 2 · Visual Customization & Layouts

  • Custom ASCII art support from text files
  • Image/SVG logo support via viuer
  • ANSI color codes in ASCII logos
  • Icon customization per module (Nerd Fonts)
  • Color customization per module
  • Default layout (side-by-side)
  • Pac-Man layout with custom header/footer
  • Side-block layout implementation
  • Tree layout for hierarchical display
  • Section layout for grouped information
  • Color palette display with style options

Phase 3 · Documentation & Examples

  • Installation guide
  • Configuration guide
  • Quick install script for Linux/macOS
  • PowerShell install script for Windows
  • Create 20+ example configurations
  • Create sample logos (text and SVG)
  • Setup uninstallation scripts
  • Layout documentation

Phase 4 · Package Manager Expansion

  • Add RPM package manager support (Fedora, RHEL)
  • Add APK package manager support (Alpine)
  • Add Nix package manager support
  • Add Homebrew package manager support (macOS/Linux)
  • Add Chocolatey package manager support (Windows)
  • Detect multiple installed package managers
  • Optimize package count detection performance

Phase 5 · Network & Connectivity

  • Implement local IP address detection
  • Fetch public IP address (with privacy option)
  • Add IPv6 support
  • Display network interface information
  • Add option to disable IP fetching for privacy

Phase 6 · Enhanced Modules

  • Implement music player integration (MPD support)
  • Add Spotify current track display
  • Implement weather module with location API
  • Add timezone and world clock display
  • Implement user info and login status
  • Add display resolution and refresh rate
  • Add theme and color scheme detection

Phase 7 · Additional Layouts

  • Implement compact layout for minimal output
  • Implement horizontal layout variant
  • Implement bottom layout with logo below info
  • Implement minimal layout (text-only)
  • Add layout preview documentation

Phase 8 · Performance Optimization

  • Parallelize slow hardware probes
  • Implement caching for module data
  • Optimize GPU detection for multi-GPU systems
  • Add lazy loading for optional modules
  • Benchmark and profile performance
  • Modularize files

Phase 9 · CI/CD & Distribution

  • Setup GitHub Actions for automated builds
  • Create binary releases for Linux x86_64
  • Create binary releases for macOS (Intel & ARM)
  • Create binary releases for Windows
  • Setup AUR package for Arch Linux
  • Setup Homebrew tap for macOS
  • Setup cargo registry for distribution
  • Setup automated changelog generation

Phase 10 · Community & Ecosystem

  • Create themes repository / registry
  • Implement theme download manager
  • Create online theme preview tool
  • Setup community theme contributions process
  • Create plugin system for custom modules
  • [/] Implement plugin configuration validation
  • Setup community issue templates
  • Create contribution guidelines

Phase 11 · Testing & Quality Assurance

  • Implement unit tests for info module
  • Implement unit tests for config module
  • Implement integration tests for layouts
  • Setup linting with clippy
  • Setup code formatter (rustfmt)
  • Implement platform-specific tests for each OS
  • [/] Add cross-platform testing suite
  • Setup code coverage reporting

Phase 12 · Advanced Features

  • Implement custom module scripting language / support
  • Add conditional module display based on system state
  • Implement theme system with variables
  • Add animation support for transitional elements
  • Implement real-time stats updates / daemon mode
  • Add config hot-reload capability
  • Implement telemetry (optional, privacy-respecting)
  • Add accessibility features (high contrast themes)

Phase 13 · Documentation & Marketing

  • Create comprehensive user manual
  • Create video tutorials
  • Setup project website with showcase
  • Create developer documentation
  • Publish blog posts about features
  • [/] Create comparison guide with similar tools
  • Setup Discord/Slack community channel
  • [/] Create contribution program