Skip to main content

MooMoolah - Personal Budget Planner

Project description

MooMoolah

A terminal-based personal budget planning application built with Python and Textual.

Features

  • 12-month forecast view - Shows projected expenses, income, and balance for the next 12 months
  • Expense and Income management - Add, edit, and delete expense/income entries
    • Recurring entries - Support for one-time, monthly, and yearly recurring transactions
    • Category tracking - Organize entries by categories

Screenshots

Main screen:

Main Screen

Adding an expense:

Add Expense

Installation & Setup

This project uses uv for dependency management.

  1. Install uv if you haven't already:

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  2. Install dependencies:

    uv sync
    
  3. Run the application:

    uv run moomoolah <state_file.json>
    

The state file will be created if it doesn't exist.

Usage

Navigation

  • Main screen: e (manage expenses), i (manage income)
  • Entry screens: Insert (add entry), Delete (remove entry), click row to edit
  • Global shortcuts: Ctrl+S (save), Ctrl+Q (quit), Escape/Backspace (back)

Entry Management

Each entry includes:

  • Description and amount
  • Category for organization
  • Recurrence type (once, monthly, yearly)
  • Start date and optional end date
  • Frequency interval (e.g., every 2 months)

Development

See plan.md for current development roadmap and planned features.

Running Tests

uv run pytest

Development Dependencies

uv sync --dev

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

moomoolah-0.1.0.tar.gz (83.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

moomoolah-0.1.0-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

Details for the file moomoolah-0.1.0.tar.gz.

File metadata

  • Download URL: moomoolah-0.1.0.tar.gz
  • Upload date:
  • Size: 83.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.13

File hashes

Hashes for moomoolah-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c33ac4c43114ebe778efe83403703cdc34da48d8f237ddcbc9ef5c241f029045
MD5 3b8b43189444b88c69dc16ef354bb159
BLAKE2b-256 7194a6e373ecad5f709aafb4c0a6c31db432cf1d8247ebbe906f9909b0ef1b5b

See more details on using hashes here.

File details

Details for the file moomoolah-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: moomoolah-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.13

File hashes

Hashes for moomoolah-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 078948ccf7a666f42fd22598874ceaf170cd77396c768dba6837516832b828f2
MD5 da3303461b7256faba75df8275a91b22
BLAKE2b-256 b88dabb0605654d83d2e971e534105c37ac2d273da6cf805215f1935d415d785

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page