Main page: Application will open up the camera and allow the users to scan their receipts.
Second page: The generated items and pricing after scanning the receipt.
Third page: The application will ask the user for the number of payees, the service charge and GST.
Fouth Page (Work in progress): The user will be prompted to select the items.
Summary Page (Work in progress): The application will output the final bill for each user and the user can choose to share with others.
What it does
BuddySplit will help the users to split their bills. The user will scan their receipt using BuddySplit, they will be prompted to answer a few questions such as how many payees, the GST percentage, and service charge percentage. Then, they will select the items they purchased. Finally, BuddySplit will calculate the individual bills and output them to the user. The user can then share it with the others.
- Scan receipt and list out all items
- Assign specific items to the different payees to ensure accurate repayment
- Store past receipts for budget tracking
- Share receipt to remind friends to repay you
How we built it
We wrote the application using React Native and frameworks such as UI-Kitten, expo, tailwind-rn, and expo-camera. We have also included external APIs such as google vision API for the image to text recognition feature in our application. We tested the application core features such as the page navigation and OCR feature using phone emulators from Android Studio.
Challenges we ran into
Time management: We were taken 24 hours to develop the application and to be honest, we needed more than 24 hours to ensure that the core features of the application are up and bug proof.
Incompatible Frameworks: We started off using the expo library to create our mobile application and ran into issues like expo not being compatible with other react-native OCR frameworks. As such, we have to depend on external APIs from Google (Google Vision API) and internet connection.
Accomplishments that we're proud of
Good team coordination, our team is splitter into 2 groups: one works with the Front-end of the app, and the other works with the back-end of the app. We managed to get some of the core features up and working.
Successful integration of the Google Vision API into our application. After hours of debugging and REST API Testing, our team managed to interact with the google vision API to get the OCR feature of the app working.
Figma prototype to UI translation. Our team started off with the Figma framework and successfully transformed it into the front-end of the application.
What we learnt
- We have learnt to read up the documentation and try out the features.
- We have learnt to work in a team and have good communication skills to get the work done.
- We have learnt to deploy and integrate external APIs into our application.
What's next for BuddySplit
- We aim to continue to work on the other features of the application such as the sharing feature where the user can share the generated receipt.
- We will also aim to continue developing the selection feature, and app logic to cater to receipts that are formatted differently.