We use mobile payment services (e.g. Venmo) everyday to split food bills among our friends. However, there's always been that awkward hassle of how to split the cost fairly, especially with multiple people sharing items and with percentage fees. That's why we wanted to create this app — Split-it is an easy way to quickly figure out the costs and to keep track of shared expenses.
What it does
At the home page, Split-It shows users any on-going payments and recent histories. There, the user can review any details, send reminders to people, and/or make any payments. When adding a new bill to split, the user opens the camera app to scan the receipt, to which our algorithm will perform preprocessing transformations and OCR to itemize the costs. Afterwards, the user selects who's paying, selects friends, matches people to orders, and chooses the tip amount. In the settings page, the user can set-up his/her banking account and add friends. Split-It works to create an entire ecosystem for ease and convenience of this bill-splitting problem.
How we built it
- The app framework was built via React Native with Expo,io for prototyping across mobile platforms.
- The login authentication was done from Firebase.
- The backend API was configured via Google Cloud Endpoints.
- OCR was coded up with Python and performed * with OpenCV, Tesseract, and other image processing packages.
- The UI prototyping was done with Figma.
Challenges we ran into
Because none of us have done mobile development, it was very challenging to set-up the frontend and learn React Native. Additionally, it was difficult to deploy our backend API with Cloud Endpoints. There were also interesting problems in designing for user experience, as well as increasing the receipt parsing accuracy.
Accomplishments that we're proud of
We're proud to have learned mobile development in this short period of time, as well as attempt such an ambitious app with multiple moving parts.
What we learned
We learned mobile development, app product design, and app deployment.
What's next for Split-It
Our app is far from a finished product. Hence, we definitely look forward to smoothing out the user experience, implementing the payments API, boosting the OCR, and clean the frontend/backend integration. We hope to see the app help people make life a little bit easier, more efficient, and more convenient.