P
AboutProjectsSkillsContactResume
P
← Back to Projects

Finsight AI

AI-Powered Expense Manager That Automates Your Financial Tracking

Live DemoView Code
Finsight AI Dashboard

The Problem

Manual expense tracking is tedious and time-consuming. Most people abandon it after a few days because categorizing expenses, analyzing spending patterns, and generating insights requires constant effort. There was a need for an intelligent system that could automate the entire process while providing actionable financial insights.

The Solution

Finsight AI eliminates manual work by leveraging Google Gemini AI to automatically categorize expenses and generate spending insights. Users simply type their expense (e.g., "Bought groceries for ₹500"), and the AI instantly detects the category as "Food & Dining". The system then analyzes spending patterns and provides monthly insights with visual charts and AI-generated summaries.

AI-Powered Categorization

Gemini AI automatically detects and categorizes expenses from natural language input—no manual selection needed.

Spending Insights

AI generates personalized spending summaries and insights, helping users understand their financial habits.

Visual Analytics

Monthly spending breakdown with interactive pie charts showing category-wise expense distribution.

Smart Search

Quickly find past expenses with intelligent search functionality across all your transactions.

Tech Stack

Flask
Celery
Redis
Gemini API
MongoDB
Railway
React
Next.js
Vercel

System Architecture

React Frontend
→
Flask REST API
↓
Celery Task Queue
→
Redis (Caching)
↓
Gemini API (AI Processing)
↓
MongoDB (Data Storage)
↓
Response to Frontend

Deployment: Backend hosted on Railway | Frontend deployed on Vercel

My Role & Contributions

  • •Architected and built the entire Flask REST API backend from scratch
  • •Designed MongoDB schema for efficient expense data storage and retrieval
  • •Integrated Google Gemini API for AI-powered expense categorization and insights generation
  • •Implemented Celery + Redis for asynchronous task processing to ensure seamless user experience
  • •Deployed and maintained production application on Railway with proper environment configuration

Technical Challenge Solved

Problem: Slow API Response Times

Initial implementation had significant delays when making Gemini API calls directly from the Flask routes. Users experienced 2-3 second wait times after adding expenses, which severely impacted the user experience.

Solution: Async Processing with Celery & Redis

Implemented a task queue system using Celery and Redis to process AI categorization asynchronously in the background. When a user adds an expense:

  1. The API immediately returns a success response to the frontend
  2. A Celery task is queued to process the AI categorization
  3. Redis caches frequently used categories to avoid redundant API calls
  4. The frontend polls for updates or uses WebSocket to display the categorized expense

Result: API response time reduced from 2-3 seconds to under 300ms, providing a seamless user experience.

Key Learnings

Real-World API Handling

Learned how to handle external API rate limits, timeouts, and failures gracefully in production environments.

System Integration

Gained experience combining multiple components: Backend + AI API + Database + Frontend into a cohesive product.

Async Processing

Mastered Redis and Celery for task queue management, significantly improving application performance and UX.

Want to see it in action?

The application is live and deployed. Check out the demo or view the source code.

Try Live DemoView on GitHub