Skip to content

Repository files navigation

Financial Consultant App

A modern, AI-powered personal financial management web application that helps users track expenses, analyze affordability, and receive intelligent financial advice through conversational AI. Built with Next.js and integrated with Google Gemini and Groq APIs for real-time financial guidance.

🚀 Features

  • 💰 Smart Expense Tracking – Add expenses through natural language or manual input
  • 📊 Financial Overview – Real-time balance tracking and budget analysis
  • 🤖 AI Financial Assistant – Get personalized advice and affordability checks
  • 📈 Monthly Statements – Automated financial reports and insights
  • 🎯 Multi-Intent Support – Handle complex queries like "I spent €50 on coffee and can I afford a €200 phone?"
  • 📱 Responsive Design – Optimized for desktop and mobile devices
  • ⚙️ Customizable Settings – Personalize your financial guidelines and preferences

Screenshots

Screenshot 1

Screenshot 3 Screenshot 4

Screenshot 6

🛠 Tech Stack

  • Frontend: Next.js 14 (App Router), React 18, TypeScript
  • Styling: Tailwind CSS, shadcn/ui components
  • AI Integration: Google Gemini API, Groq API
  • Data Storage: LocalStorage (client-side persistence)
  • Deployment: Vercel-ready with environment configuration

📂 Project Structure

financial-consultant-app/
├── app/                    # Next.js App Router
│   ├── api/chat/          # AI chat API endpoints
│   ├── globals.css        # Global styles
│   └── page.tsx           # Main application page
├── components/            # React components
│   ├── ui/               # Reusable UI components
│   ├── chat-interface.tsx # AI chat interface
│   ├── overview.tsx      # Financial dashboard
│   └── expenses-history.tsx # Transaction history
├── lib/                   # Core business logic
│   ├── agent.ts          # AI agent and intent classification
│   ├── storage.ts        # Data persistence layer
│   └── month-clock.ts    # Artificial time management
├── hooks/                 # Custom React hooks
└── types/                 # TypeScript type definitions

⚡ Quick Start

1️⃣ Clone and Install

git clone https://github.com/yourusername/financial-consultant-app.git
cd financial-consultant-app

Option A: Using pnpm (recommended)

pnpm install

Option B: Using npm

npm install

Option C: Using requirements.txt (if node_modules was deleted)

# First, restore package.json dependencies
npm install
# or
pnpm install

2️⃣ Environment Setup

Copy the environment template and configure your API keys:

cp env.example .env.local

Add your API keys to .env.local:

GEMINI_API_KEY=your_gemini_api_key
GROQ_API_KEY=your_groq_api_key

3️⃣ Run Development Server

pnpm dev

Open http://localhost:3000 to start using the app.

📋 Dependencies

The project includes a requirements.txt file that lists all dependencies with their versions. This is useful when:

  • Sharing the project without node_modules folder
  • Documenting exact versions used in development
  • Troubleshooting dependency issues

Using requirements.txt

# The requirements.txt file contains all dependencies
# Use it as reference or to restore dependencies:

# Method 1: Direct npm/pnpm install (recommended)
npm install
# or
pnpm install

# Method 2: If you need to check specific versions
cat requirements.txt

Note: This is a Node.js project, so requirements.txt serves as documentation. The actual dependency management is handled by package.json and pnpm-lock.yaml.

🔧 Configuration

The app supports two AI models:

  • Google Gemini (default) - More comprehensive financial analysis
  • Groq - Faster responses for quick queries

Switch between models in the chat interface or configure your preference in settings.

📱 Usage

  1. Onboarding – Set up your financial profile (income, savings, recurring payments)
  2. Add Expenses – Use natural language: "I spent €25 on lunch"
  3. Get Advice – Ask questions: "Can I afford a €500 vacation?"
  4. View Analytics – Check your overview dashboard and monthly statements
  5. Customize – Adjust settings and financial guidelines

🚀 Deployment

Deploy to Vercel (recommended):

vercel

Or deploy to any Node.js hosting platform with environment variables configured.

🤝 Contributing

This is a personal project, but suggestions and improvements are welcome! Feel free to open issues or submit pull requests.

📄 License

This project is open source and available under the MIT License.

👤 Author

Muhammad Afaq Jamshaid
Built as a personal financial consultant application to demonstrate modern web development with AI integration.


Built with ❤️ using Next.js, TypeScript, and AI APIs

Releases

Packages

Contributors

Languages