Skip to content
This repository was archived by the owner on Aug 13, 2025. It is now read-only.

YaredPena/smartwallet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SMARTWALLET

SCOPE

SmartWallet is a unified personal finance management application designed to give users a consolidated view of all their financial accounts. It simplifies expense tracking, budgeting, and provides actionable insights to help users make smarter spending decisions.

TECH STACK

React Vite TailwindCSS NodeJS Express.js MongoDB

PROJECT OVERVIEW

SmartWallet aggregates transaction data from multiple credit cards and bank accounts using the Plaid API, categorizes expenses, and visualizes spending patterns. Users can set monthly budgets, track progress in real-time, and receive personalized insights powered by an AI-driven advisor.

KEY FEATURES

  • Account Aggregation: Connect unlimited bank and credit card accounts to view all transactions in one dashboard.
  • Real-time Transactions: Fetch and display recent transactions with filtering by account, date, and category.
  • Budgeting Tools: Create and manage monthly budgets for different categories, with visual progress indicators.
  • Spending Insights: AI-driven recommendations to help optimize spending habits and identify saving opportunities.
  • Responsive Design: Built with React, Vite, and TailwindCSS for lightning-fast performance and a seamless user experience on any device.

OUR SOLUTION

Our approach leverages a modern MERN stack architecture:

  1. Frontend: A React single-page application bootstrapped with Vite and styled with TailwindCSS for rapid development and great UX.
  2. Backend: An Express.js server handles API requests, user authentication, and communicates securely with the Plaid API.
  3. Database: MongoDB stores user profiles, linked account metadata, budgets, and categorized transactions.
  4. AI Advisor: A modular chatbot component provides contextual spending advice by analyzing historical transaction data.

This modular design ensures each layer can scale independently and allows for easy integration of additional features in the future.

CHALLENGES

  • API Integration: Handling Plaid’s authentication flow, token exchange, and webhook events required careful error handling and security considerations.
  • Data Normalization: Mapping and categorizing transactions from disparate financial institutions into a consistent schema.
  • Real-time Updates: Ensuring that transactions and budget progress reflect immediately in the UI without compromising performance.
  • Security & Compliance: Protecting sensitive user data with secure storage, environment variables, and JWT-based authentication.

ACKNOWLEDGMENTS

  • Plaid for providing the financial API connectivity.
  • React and Vite for the frontend framework and tooling.
  • TailwindCSS for utility-first styling.
  • Node.js and Express.js for the backend server.
  • MongoDB for the NoSQL database.
  • Inspiration from open-source finance dashboards and budgeting apps.

Contributors

Yared Pena

Yared Pena

William Ng

William Ng

Thamida Choudhury

Thamida Choudhury

Sajed Atwa

Sajed Atwa

About

Your all-in-one hub to manage credit cards, track spending, and hit your savings goals.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5