Inspiration
Our inspiration came from a familiar situation: organizing a group hangout, covering the bill, and then feeling awkward asking everyone to e-transfer their share. This becomes especially uncomfortable when the group includes new friends or people you do not know very well. Figuring out who owes what and following up afterward can turn a fun experience into an unnecessary chore.
We wanted to make that process easier while also giving people a way to preserve the memories they made together. After a dinner, birthday celebration, or spontaneous outing, the expenses might live in one app, the photos in another, and the payment reminders somewhere in a group chat. We saw an opportunity to bring these pieces together around the event itself.
Our goal is to help people spend less time sorting out payments and more time enjoying each other’s company. By combining expense splitting with shared memories, we want to make each event easier to settle and more meaningful to look back on.
What it does
Centimental is a mobile application that brings shared expenses and shared memories together. Users can add expenses through receipt scanning or manual input, then select the people involved to split the bill.
Users can create events to organize shared expenses and upload photos, keeping the costs and memories of a dinner, celebration, or trip in one place.
Adding friends makes it easier to invite people to events and split expenses. Users can also choose which social media handles to display on their profiles, helping them stay connected with people they meet.
Beyond expense splitting, Centimental provides spending analysis by category, helping users understand where their money goes. It also shows how much they owe others and how much they are owed, making shared finances easier to track.
How we built it
We started by using Figma to design the interface and map out the application’s core features and user flows. This gave our team a shared vision of how users would add expenses, split bills, and organize events.
For the frontend, we used React Native with Expo Go to build and test the mobile application. Expo Go allowed us to quickly check new features on our devices and refine the interface throughout development.
To power receipt scanning, we integrated the Gemini API to analyze receipt images and convert their contents into structured JSON. This lets us extract the information needed to create an expense, reducing the amount of manual input required.
For the backend, we used Supabase because it was quick to set up and flexible enough to adapt as our application evolved. Together, these tools helped us move quickly from our initial designs to a working application within the hackathon’s limited timeframe.
Challenges we ran into
One of our biggest challenges was managing scope creep. As we implemented larger features, we often discovered smaller requirements and improvements needed to make them work well. These dependencies were not always obvious during planning, making it difficult to predict how much time each feature would take.
We also struggled to work in parallel because many features were interconnected. Some tasks depended on another teammate’s work being completed first, creating bottlenecks and slowing our progress.
To address these challenges, we communicated frequently to clarify dependencies, agree on priorities, and coordinate our next steps. This helped us divide tasks more effectively, reduce blockers, and keep everyone working toward the same goal within the limited time available.
These challenges reinforced the importance of planning ahead and effective communication, especially when building an application that has can have so many complex and interconnected features
Accomplishments that we're proud of
We’re proud that in just 24 hours, we delivered a high-completion, production-ready project. We went through the entire software development lifecycle, from requirement analysis and system design to implementation and testing, while continuously iterating based on real constraints
Despite the short time frame, we focused on building a system that is robust, secure, and scalable, rather than a surface-level prototype. This meant making intentional architectural decisions, handling edge cases, and ensuring the application could realistically be extended beyond a hackathon environment.
Completing a full, end-to-end solution under tight time constraints is something we’re especially proud of.
What we learned
We learned the importance of clear task delegation and parallelization, especially under tight time constraints. Early on, we faced tricky situations where one or more of us had to pause our work because our progression depended on another member's completion of their task at hand.
We realized that no single person could stay within their comfort zone, everyone had to take on unfamiliar challenges and step into new roles. We also learned that we shouldn't be worried to challenge ambitious ideas as those often allow us to learn the most.
Overall, the experience reinforced how strong collaboration, adaptability, and trust within a team can turn an ambitious vision into reality.
What's next for Centimental
Implementing other vision confirmation APIs to increase the accuracy of the receipt readings. We plan to integrate Google Calendar so users can add Centimental events directly to their calendars, making it easier to keep track of upcoming gatherings and coordinate their schedules. We also want to build a web version of Centimental, giving users the flexibility to manage expenses and events from their laptops or access the platform without downloading the mobile app.
Built With
- expo-go
- expo.io
- figma
- gemini-api
- python
- react-native
- supabase
Log in or sign up for Devpost to join the conversation.