
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
System Architecture
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:
- The API immediately returns a success response to the frontend
- A Celery task is queued to process the AI categorization
- Redis caches frequently used categories to avoid redundant API calls
- 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.