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

Challenge: Processing AI Calls Without Blocking Users

Calling Gemini API directly from Flask routes would block the request until the AI finished processing. This created a poor user experience where users had to wait for categorization before seeing their expense logged.

Solution: Async Processing with Celery & Redis

Implemented a background task queue using Celery and Redis to handle AI categorization asynchronously:

  1. User submits expense—API immediately returns success and logs the transaction
  2. Celery worker picks up the AI categorization task from the queue
  3. Gemini API processes the expense description in the background
  4. Results are stored in MongoDB and cached in Redis for future use
  5. Frontend updates automatically when categorization completes

Result: Users get instant feedback when adding expenses, while AI processing happens seamlessly in the background.

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