TwoCents
Inspiration
We were inspired by our own system of taking turns paying for meals and dates rather than splitting every bill. While this worked in theory, it was easy to lose track of whose turn it was, leading to imbalances. TwoCents was created to solve this problem by automatically keeping things fair and transparent for couples and friend groups.
What it does
TwoCents tracks shared expenses and determines whose turn it is to pay next based on past contributions. The app ensures fairness by keeping a running balance and suggesting who should cover the next bill.
How we built it
- React & TypeScript for the core app functionality
- CSS & simple HTML elements for custom visual expense tracking
- A smart tracking algorithm to fairly assign the next payer based on past payments
- Firebase to maintain expense history
Challenges we ran into
- Designing an intuitive algorithm to determine the next payer in a fair and transparent way
- Finding a clean, simple way to display spending history and balances without relying on external chart libraries
- Ensuring the UI remains user-friendly and doesn’t overwhelm users with too much data
- Implementing all of the features we wanted in the short time frame
Accomplishments that we're proud of
- Successfully creating an automated system that eliminates the guesswork of expense tracking
- Building a simple and effective UI that makes tracking payments easy and intuitive
- Designing a flexible system that works for small recurring expenses
What we learned
- How to create an effective tracking system without complex third-party tools
- The importance of user experience in financial apps, keeping things clear and simple is key
- How to manage state and data persistence efficiently in React
- How to create components that change depending on data
What's next for TwoCents
- Adding multi-user support so couples or groups can track expenses together in real time
- Implementing a notification system to remind users when it’s their turn to pay
- Expanding event budgeting tools to support more custom splitting options
- Exploring mobile integration for a smoother, on-the-go experience
Built With
- firebase
- next.js
- react
- typescript
Log in or sign up for Devpost to join the conversation.