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.
- 💰 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
- 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
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
git clone https://github.com/yourusername/financial-consultant-app.git
cd financial-consultant-appOption A: Using pnpm (recommended)
pnpm installOption B: Using npm
npm installOption C: Using requirements.txt (if node_modules was deleted)
# First, restore package.json dependencies
npm install
# or
pnpm installCopy the environment template and configure your API keys:
cp env.example .env.localAdd your API keys to .env.local:
GEMINI_API_KEY=your_gemini_api_key
GROQ_API_KEY=your_groq_api_keypnpm devOpen http://localhost:3000 to start using the app.
The project includes a requirements.txt file that lists all dependencies with their versions. This is useful when:
- Sharing the project without
node_modulesfolder - Documenting exact versions used in development
- Troubleshooting dependency issues
# 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.txtNote: 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.
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.
- Onboarding – Set up your financial profile (income, savings, recurring payments)
- Add Expenses – Use natural language: "I spent €25 on lunch"
- Get Advice – Ask questions: "Can I afford a €500 vacation?"
- View Analytics – Check your overview dashboard and monthly statements
- Customize – Adjust settings and financial guidelines
Deploy to Vercel (recommended):
vercelOr deploy to any Node.js hosting platform with environment variables configured.
This is a personal project, but suggestions and improvements are welcome! Feel free to open issues or submit pull requests.
This project is open source and available under the MIT License.
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



