Skip to content

nisargptl/splitit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Inspiration
The inspiration for SmartSplit stemmed from our fascination with the capabilities of Optical Character Recognition (OCR) technology and its potential to simplify everyday tasks. We noticed that splitting bills after group outings was a common pain point—manually calculating each person's share was time-consuming and often led to errors. We thought, what if we could harness OCR to automatically read and process bills? This idea excited us, as it combined cutting-edge technology with a practical solution to a real-world problem. Our goal became clear: create an app that leverages OCR to make expense splitting effortless and accurate.

How We Built SmartSplit
1. Frontend Development:
We chose React with TypeScript for the frontend to create a responsive and user-friendly interface. TypeScript provided type safety, which helped catch errors early and made the codebase more maintainable. The UI allows users to effortlessly upload photos of their bills and view the split expenses in a clear and organized manner.
For setup run below commands:
i. npm i
ii. npm start

2. Backend Development:
Our backend is powered by Node.js, which offers a robust environment for building scalable network applications. We focused on creating efficient APIs to handle user requests and process data securely.
For setup run below commands:
i. npm i
ii. npm run dev

3. Authentication:
To ensure secure user authentication and authorization, we integrated OAuth using Okta. This approach provided a reliable and secure method for users to sign up and log in, protecting sensitive information.

4. Database Management:
We utilized MongoDB Atlas as our database solution due to its flexibility and scalability in handling unstructured data. It allowed us to store user information, transaction details, and other necessary data efficiently.

5. OCR and Data Processing:
The core feature of SmartSplit revolves around processing images of bills to extract and interpret data:
Amazon Textract: Employed for its powerful OCR capabilities to extract text from uploaded bill images accurately.
ChatGroq Integration: Used to parse the extracted text and identify individual transactions and their corresponding prices.
AWS Lambda & API Gateway: Deployed our OCR processing code on AWS Lambda, enabling serverless execution, and used API Gateway to manage API calls securely and efficiently.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 7