Skip to content

blairmichaelg/paycheck_waterfall_app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

71 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ’° PayFlow

Deployed on GitHub Pages License: MIT TypeScript React Tests

Your guilt-free spending companion – Stop worrying about every purchase. PayFlow tells you exactly how much you can spend without missing rent, bills, or savings goals.

Perfect for anyone living paycheck-to-paycheck who wants simple, stress-free money management.

🌐 ▢️ Try it now β†’ | 100% free, no sign-up, runs in your browser


🎯 Why PayFlow?

Most budgeting apps are overwhelming. They want you to categorize every transaction, set up complex envelopes, and track everything perfectly. But if you're living paycheck-to-paycheck, you don't need all thatβ€”you just need to know:

"Can I afford this coffee without missing rent?"

PayFlow answers that question in seconds. Enter your paycheck, add your bills and goals, and instantly see your guilt-free spending amount. That's it.

✨ Features

Core Experience

  • 🎯 Guilt-free spending focus: See at a glance how much you can spend without worry
  • πŸ“Š Smart allocation: Cadence-aware bills with due date priority, paycheck variance cushioning, and bonus income modeling
  • πŸ”„ One-time bills: Track non-recurring expenses like car repairs or medical bills (always allocated in full)
  • πŸ’‘ Transparent breakdown: Clear waterfall calculation showing exactly where your money goes
  • 🌊 Visual waterfall: Beautiful bucket-filling visualization showing bills and goals progress

UX & Design

  • 🎨 Modern UI: Vibrant gradients, smooth animations, dark mode, and fully responsive mobile design
  • οΏ½ Mobile-first: Optimized layouts and touch targets for small screens (PWA-ready)
  • πŸ”” Smart notifications: Toast alerts for auto-adjusted paycheck ranges and important updates
  • πŸ’ͺ Positive messaging: Encouraging language when money is tightβ€”no guilt, just facts

Tech & Privacy

Key Features

  • 🌐 PWA Support: Install on your phone, works offline with service worker caching
  • πŸ”’ Local-first: All data stays in your browser with localStorage persistence and automatic schema migrations
  • πŸ“€ Import/Export: Back up and restore your configuration as JSON with timestamp-based filenames
  • β™Ώ Accessible: WCAG 2.1 AA compliant with keyboard navigation, ARIA labels, and screen reader support
  • πŸ§ͺ Well-tested: 209 tests covering allocation logic, UI components, and data persistence
  • πŸ”’ Privacy-first: No tracking, no ads, no account requiredβ€”your financial data never leaves your device

πŸš€ Quick Start

Try It Now

No installation required! Just open your browser:

🌐 ▢️ Live Demo

Local Development

cd webapp
npm ci
npm run dev

Run tests:

npm test

πŸ“Š Screenshots

Mobile View Desktop View
Mobile Desktop

Responsive design that works perfectly on all devices

πŸ—οΈ Architecture

  • webapp/ – Vite + React TypeScript single-page app containing the full experience
  • docs/ – Architecture documentation and archives
  • .github/workflows/ – CI definitions for the webapp pipeline

πŸ’° Financial Precision

PayFlow uses standard JavaScript floating-point arithmetic, which is suitable for personal budgeting and typical paycheck amounts. For amounts under $100,000/month, cumulative rounding errors are negligible (<$0.01).

Perfect for:

  • Personal budgeting and household finances
  • Small business payroll
  • Standard consumer finance tracking

Not recommended for:

  • High-frequency trading or scientific calculations
  • Legal/tax calculations with regulatory precision requirements

🀝 Contributing

We welcome contributions! Here's how to get started:

  1. Fork the repository
  2. Clone your fork locally
  3. Create a feature branch (git checkout -b feature/amazing-feature)
  4. Make your changes
  5. Run the test suite (npm test)
  6. Commit your changes (git commit -m 'Add amazing feature')
  7. Push to your branch (git push origin feature/amazing-feature)
  8. Open a Pull Request

Requirements:

  • All tests must pass (npm test)
  • Code must be formatted (npm run format:check)
  • Build must succeed (npm run build)

πŸš€ Deployment

PayFlow is automatically deployed to GitHub Pages on every push to main:

See .github/workflows/deploy-gh-pages.yml for the full deployment pipeline.

Roadmap Snapshot

  • βœ… Validate allocation math and import/export flows fully client-side
  • βœ… Harden UI/UX, add schema validation, and automate CI
  • βœ… Publish the final web app (deployed on GitHub Pages)
  • βœ… Complete comprehensive code review improvements (transparency, simplicity, positivity, mobile-first)
  • βœ… Progressive Web App (PWA) support with offline functionality
  • βœ… One-time bill frequency for non-recurring expenses
  • βœ… Enhanced calculation breakdown with transparent math visualization

πŸ’¬ Feedback & Support

Found a bug? Have a feature request?

  • οΏ½ Open an issue on GitHub
  • πŸ’» Pull Requests: Always welcome!

Love PayFlow? Share it with someone who could use guilt-free spending in their life. That's the best support you can give!


Made with ❀️ for people living paycheck-to-paycheck. You deserve financial peace, not just spreadsheets.

About

PayFlow: Calculate guilt-free spending from your paycheck. Simple, transparent personal finance calculator built with React & TypeScript.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors