Crate envelope_cli

Crate envelope_cli 

Source
Expand description

EnvelopeCLI - Terminal-based zero-based budgeting application

This library provides the core functionality for the EnvelopeCLI budgeting application. It implements a zero-based budgeting system similar to YNAB, but designed for terminal users who prefer CLI and TUI interfaces.

§Architecture

The crate is organized into the following modules:

  • config: Configuration and path management
  • error: Custom error types
  • models: Core data models (accounts, transactions, categories, etc.)
  • storage: JSON file storage layer
  • services: Business logic layer
  • audit: Audit logging system
  • backup: Automatic backup management

§Example

use envelope_cli::config::{paths::EnvelopePaths, settings::Settings};

let paths = EnvelopePaths::new()?;
let settings = Settings::load_or_create(&paths)?;

Re-exports§

pub use error::EnvelopeError;

Modules§

audit
Audit logging system for EnvelopeCLI
backup
Backup system for EnvelopeCLI
cli
CLI command handlers
config
Configuration module for EnvelopeCLI
crypto
Cryptographic functions for EnvelopeCLI
display
Display formatting for terminal output
error
Custom error types for EnvelopeCLI
export
Export module for EnvelopeCLI
models
Core data models for EnvelopeCLI
reports
Reports module for EnvelopeCLI
services
Service layer for EnvelopeCLI
setup
First-run setup wizard
storage
Storage layer for EnvelopeCLI
tui
Terminal User Interface module