Personal

Budget_my

Financial freedom tracker with domain-first debt management

PythonStreamlitPydanticPyYAML

The Problem

Most budgeting tools are either too simple (basic spreadsheets that can't handle real-world complexity) or too complex (enterprise dashboards that overwhelm). Real people need semi-monthly paychecks with business day rules, multiple debt types with different interest rules (APR vs daily accrual, promo credits), and 'what do I pay first?' clarity when money is tight.

The Solution

Built a domain-first budgeting tool that understands how money actually works. Paycheck scheduler handles 15th + end-of-month with business day rules. Debt-specific modules encode the actual rules for each type (Sallie Mae vs credit cards vs Affirm). Red mode alerts provide smart recommendations when obligations exceed available cash.

Product Decisions

  • Semi-monthly paycheck scheduling as a first-class feature—most salaried workers get paid this way
  • Debt-type modules because each debt has genuinely different rules (APR vs daily accrual, promo credits, fees)
  • Red mode alerts for proactive guidance—most tools just show you're broke, this tells you what to do
  • Avalanche vs Snowball comparison to show strategy tradeoffs with real projections
  • Plan → Track → Adjust loop over complex accounting

Architecture

Frontend

Streamlit for rapid interactive UI development

Backend

Python with Pydantic for data validation and type safety

Database

YAML/JSON configuration with optional persistence

Other

Modular architecture: budget_core (business rules), ui (Streamlit components), sim (payoff projections)

Technical Highlights

  • Semi-monthly paycheck scheduler: 15th → previous business day if weekend, end-of-month → last business day
  • Multi-debt support with debt-specific rules: student loans (Sallie Mae, Nelnet), credit cards (APR, fees), BNPL (Affirm, Zip, Sezzle), device loans (promo credits)
  • Dual interest calculation: monthly APR vs daily accrual for high-interest loans
  • Overdue engine with roll-forward logic and fee tracking (late fees, over-limit fees, annual fees)
  • What-if scenario modeling: avalanche vs snowball strategy comparison with projected payoff dates
  • Red mode recommendations engine: prioritized suggestions when obligations exceed available cash

Results & Outcomes

  • Demonstrates domain modeling for complex real-world rules
  • Shows fintech understanding beyond basic CRUD
  • Practical product solving a real personal pain point
  • Clean, maintainable codebase as portfolio piece

What I'd Do Next

  • Bank account linking for automatic transaction import
  • Recurring transaction support
  • Mobile companion for quick expense logging
  • Budget templates for common scenarios