Inspiration

Price tags tell us how many dollars something costs, but they don't always make that cost feel meaningful. We wanted to explore a different way of thinking about spending: what if a purchase could also be shown in terms of the time it took you to earn that money?

That became Girl Math.

What it does

Girl Math is a financial-awareness web application that converts the price of a purchase into estimated work time.

Users enter their hourly wage, estimated tax percentage, and typical workday length. Girl Math then estimates their hourly pay after taxes and translates a purchase into hours and minutes of work.

For example, for someone earning $18 per hour with a 15% estimated tax rate, a $120 purchase represents approximately 7 hours and 51 minutes of work.

The Decision Mirror then shows what else those same dollars could support, such as a wishlist item, savings goal, or giving allocation.

Girl Math does not tell users whether a purchase is good or bad. The goal is to give users more context and let them decide.

Your money. Your time. Your decision.

How we built it

We built the frontend with React and Vite and used Python with Flask for the backend.

When a user enters a purchase, the React frontend sends the price, hourly wage, estimated tax percentage, and workday length to the Flask API. Python validates the values, calculates the estimated work time, and returns the result to React as JSON.

We use browser localStorage to preserve wishlist items, savings goals, decisions, and other demo data between page refreshes.

We also created Python tests to verify the core financial calculations and invalid-input handling.

Challenges we ran into

One challenge was making the application informative without making it judgmental. We wanted the user to understand opportunity cost without implying that buying something is automatically a bad decision.

We also had to keep information synchronized across the calculator, Decision Mirror, wishlist, savings goals, giving feature, and dashboard.

Another challenge was making the financial calculation reliable while keeping the interface simple enough to demonstrate quickly during a hackathon.

Accomplishments we're proud of

We're proud that Girl Math became a working full-stack application rather than only a visual prototype.

The Python calculation engine communicates with the React frontend, the Decision Mirror responds to each user's data, dashboard values update after decisions, and localStorage preserves information after refreshing.

We're also proud of the visual identity and the focus on making financial awareness feel approachable rather than intimidating.

What we learned

This project taught us how a React frontend communicates with a Python backend through an API.

We also learned about application state, JSON responses, Flask routes, localStorage, testing, input validation, and responsive UI design.

On the product side, we learned that financial tools need thoughtful language. Even a technically correct feature can feel judgmental if the wording or interface pushes users toward one decision.

What's next for Girl Math

Future versions could include a browser extension that translates prices directly on shopping pages, optional user accounts and cloud synchronization, expanded savings tools, and more personalized financial insights.

These are future ideas and are not part of the current prototype.

Built With

Share this project:

Updates

Submission history