About the Project
Inspiration
We were inspired by the need for accessible and personalized financial guidance. Many people struggle with planning for major life events—whether it's buying a home, getting married, or preparing for retirement—because financial advice can be generic and disconnected from their real financial situation. We wanted to build a tool that integrates directly with a user's bank data to provide tailored recommendations based on their actual financial habits.
What We Learned
Throughout this project, we gained valuable experience working with financial data, API integrations, and full-stack development. Specifically, we:
- Learned how to securely connect and retrieve user bank data using the Plaid API.
- Built a Flask backend that serves as a bridge between the frontend and third-party APIs, including Plaid and OpenAI.
- Worked with PostgreSQL to store and manage both user account and financial data.
- Developed a React frontend to display financial insights in an intuitive and user-friendly way.
- Strengthened our debugging and problem-solving skills, especially in handling API requests and responses.
How We Built It
Our project consists of three main components:
- Frontend: Built with React, this provides an interactive dashboard where users can view financial insights and request guidance.
- Backend API: A custom Flask API that handles requests from the frontend, interacts with Plaid to fetch financial data, processes user queries using OpenAI, and stores structured data in PostgreSQL.
- APIs & Data Sources:
- Plaid API: Fetches users' financial transactions and account balances.
- OpenAI API: Generates personalized financial recommendations based on user data.
- PostgreSQL: Stores user preferences and processed financial insights.
- Plaid API: Fetches users' financial transactions and account balances.
Challenges We Faced
One of the biggest challenges was working with multiple APIs and ensuring smooth communication between them. Specifically:
- Plaid API Integration: Retrieving, formatting, and interpreting transaction data correctly was complex, especially handling different bank data formats.
- Custom API Development: We had to create our own API to interface between the frontend, Plaid, and OpenAI. Debugging this was particularly difficult due to authentication issues, API rate limits, and handling real-time requests.
- Backend Debugging: Since we were dealing with multiple external APIs, tracking down errors required extensive logging and testing.
Despite these challenges, we successfully built a working prototype that provides real-time, data-driven financial guidance to users at different life stages. We’re excited about the potential of this project and how it can help people take control of their financial future. 🚀
Log in or sign up for Devpost to join the conversation.