Inspiration
My inspiration for this project came about when assessing the current generation's inability to manage personal finances. One of my close friends does not have any worth for finance and just spends as much as he wants without really knowing how much he has spent.
What it does
This app tracks one's everyday income, expenses, and remaining amount. It allows the user to input their transactions, account name, and categories. From there, the app calculates these three fields based on the transactions the user has made. From there, it creates a comprehensive graph with information regarding the income and expenses of the month. In addition, the user can also upload a CSV document of their bank statement, and the app parses those into the transactions, accounts, and categories.
How we built it
This app was built using nextjs and react. I authenticated the sign in and sign up using clerk, configured the backend requests using hono, and I also used neon and drizzle-orm as my SQL databases. I also used the shadcn-ui to be able to easily and quickly download needed libraries for the frontend.
Challenges we ran into
Some of the challenges we ran into were being able to process the backend requests correctly and parse them into the databases and update it in the app, correctly configuring the clerkMiddleware and zodValidator. Another thing that was challenging for me was coding the schema.ts and drizzle.ts so they work correctly. The hardest thing though was being able to get the CSV document feature working as it took a lot of time to be able to figure out how to parse the values into the database.
Accomplishments that we're proud of
I am really proud that I was able to add the CSV document feature into my app. In addition, this was my first time working with neon and drizzle-orm, so it was really great that I was able to get those working.
What we learned
I learned a lot about backend requests using Hono as well as using the Neon and DrizzleORM databases. I also learned a lot about using databases and how to parse values from client requests. This project further developed my understanding of Nextjs and its capabilities in making a comprehensive and resonating web application.
What's next for Vorifi
I really hope to incorporate Plaid into my project as to allow users to seamlessly connect their bank accounts to this application. I also hope to make the UI better as well as add more features such as an AI to help make adding transactions easier.
Log in or sign up for Devpost to join the conversation.