A kakeibo (household financial ledger) CLI application with powerful Lisp-based table transformations.
Full documentation is available at: https://haruki7049.github.io/kakei/
kakei is a command-line application for managing personal finances using the Japanese kakeibo (家計簿) method. It provides transaction tracking, categorization, and powerful Lisp-based table transformations for flexible analysis and reporting.
- 📊 Transaction Management - Add, list, and manage financial transactions
- 🏷️ Category & Account Organization - Organize by customizable categories and accounts
- 🔄 Lisp-Based Transformations - Transform and analyze data using a Lisp dialect
- 📋 Beautiful Tables - Formatted output using the
tabledcrate - 💾 SQLite Database - Persistent storage with automatic migrations
- ⚙️ Configurable - Customize categories and accounts via TOML config
cargo install --path .nix profile install github:haruki7049/kakeigit clone https://github.com/haruki7049/kakei.git
cd kakei
cargo build --release📖 For detailed installation instructions, see the Installation Guide.
# Initialize database
kakei init
# Add transactions
kakei add --date 2025-01-01 --amount -1000 --category Food --account Cash
kakei add --date 2025-01-15 --amount 50000 --category Salary --account Bank
# List transactions
kakei list
# Transform with Lisp
kakei transform --program "(group-by table (lambda (pair) (cdr (assoc 'category (cdr pair)))))"📖 For a detailed walkthrough, see the Quick Start Guide.
All detailed documentation has been moved to the kakei Documentation Book:
- Commands Reference - Complete command documentation
- Data Format - Understanding transaction data structure
- Lisp Functions - All available Lisp functions
- Configuration - Customizing kakei
- Architecture - Technical architecture
- Examples - Real-world usage examples
- Development - Building and testing
- Contributing - Contribution guidelines
The documentation is built with mdBook:
# Install mdBook
cargo install mdbook
# Build and serve locally
cd docs/book
mdbook serve
# Open http://localhost:3000 in your browserMIT License - see LICENSE file for details.
Contributions are welcome! See the Contributing Guide for details.
haruki7049 tontonkirikiri@gmail.com