FinApp — Your Smart Personal & Shared Finance Assistant

🌟 Inspiration

Managing personal finances is already stressful — but shared expenses make it even harder.

Splitting bills manually, figuring out who owes what, tracking monthly spending, detecting subscriptions, and generating insights is complicated and time-consuming.

I wanted to build a tool that feels like a smart financial assistant, not just another dashboard.

This project was inspired by:

  • The rise of AI copilots
  • Real frustrations in everyday expense-splitting
  • The gap between “tracking” and “understanding” money
  • Modern futuristic UI/UX patterns emerging in fintech products

This led to FinApp — a clean, intelligent, automated way to manage personal + shared finances.

💡 What FinApp Does

FinApp helps users:

  • 📊 Categorize and analyze spending automatically
  • 🤝 Split shared bills and predict shared expenses
  • 🔔 Detect subscriptions + calculate monthly/yearly costs
  • 🔥 Visualize spending using heatmaps, charts, and trend lines
  • 🤖 Get personalized AI-powered insights
  • 💬 Chat with a built-in financial assistant for instant answers

⚙️ Backend & Logic

Tech Stack

  • Python
  • Streamlit (UI + server logic)
  • Pandas (data processing & cleaning)
  • ChatGPT API (AI insights & assistant)

Custom Algorithms

  • 🔮 Shared expense prediction
  • 🧩 Subscription detection
  • 🚨 Outlier detection for unusual spending
  • 🔍 Keyword and heuristic-based category assignment

🎨 UI & Design

  • Fully redesigned interface from scratch
  • Futuristic gradient-based theme
  • Micro-interactions and floating elements
  • Custom CSS for:
    • glowing panels
    • animated buttons
    • floating chat icon
  • Sidebar navigation with smooth transitions

🧠 Data Processing Workflow

  1. Upload CSV bank statements
  2. Standardize varying column formats
  3. Categorize transactions via heuristics + fallback rules
  4. Compute monthly summaries
  5. Prepare chart-ready datasets
  6. Generate AI-powered insights

🧩 Challenges I Faced

1️⃣ Parsing messy bank statements

Every bank exports CSVs differently.

I had to:

  • detect columns dynamically
  • handle missing fields
  • normalize transaction formats

2️⃣ Getting AI predictions right

Shared expenses are subjective.

I built fallback rules for when AI confidence was low.

3️⃣ Streamlit UI limitations

Creating:

  • custom animations
  • floating chat button
  • glowing gradients

    required manual CSS overrides.

4️⃣ System design tradeoffs

Balancing:

  • ⚡ speed
  • 🎨 clean visuals
  • 🔄 real-time updateswas harder than expected — every new feature affected layout and responsiveness.

Built With

Share this project:

Updates

Submission history