A modern, AI-powered financial platform built with Next.js 14
Live Demo β’ Documentation β’ Report Bug β’ Request Feature
Paissa is a progressive 3-stage financial management platform that grows with your financial literacy. From basic transaction tracking to AI-powered budget insights, each stage builds upon the previous one to create a comprehensive financial ecosystem.
- π Stage 1: Complete transaction management with CRUD operations
- π Stage 2: Interactive analytics with beautiful charts and insights
- π€ Stage 3: AI-powered budget recommendations using Google Gemini
- π Dark/Light Theme: Seamless theme switching with persistence
- π± Responsive Design: Mobile-first approach with modern UI
- β‘ Real-time Updates: Live data synchronization across components
- π Secure: MongoDB integration with proper data validation
- Framework: Next.js 14 (App Router)
- Language: TypeScript
- Styling: Tailwind CSS
- Animations: Framer Motion
- Charts: Chart.js + React Chart.js 2
- Forms: React Hook Form + Zod validation
- Icons: Lucide React
- Runtime: Node.js (Next.js API Routes)
- Database: MongoDB with Mongoose ODM
- AI Integration: Google Gemini API
- Validation: Zod schemas
- Date Handling: date-fns
Before running this project, ensure you have:
- Node.js 18.0 or higher
- npm or yarn package manager
- MongoDB database (local or cloud)
- Google Gemini API key (optional, for AI features)
git clone https://github.com/Ayush5071/paissa.git
cd paissanpm installCreate a .env.local file in the root directory:
# Database
MONGO_URI=mongodb+srv://username:password@cluster.mongodb.net/paissa
# AI Features (Optional)
GEMINI_API_KEY=your_google_gemini_api_key
# Next.js
NEXTAUTH_SECRET=your_secret_key
NEXTAUTH_URL=http://localhost:3000npm run devOpen http://localhost:3000 to view the application.
- Navigate to the Dashboard
- Add new transactions using the form
- View, edit, or delete existing transactions
- Monitor monthly spending patterns
- Access the Analytics section
- View category-wise spending breakdown
- Analyze monthly trends with interactive charts
- Review dashboard summary metrics
- Go to the Budgets page
- Set monthly budgets for different categories
- Compare actual vs budgeted spending
- Get AI-powered recommendations and insights
paissa/
βββ π app/ # Next.js 14 App Router
β βββ π about/ # About page
β βββ π api/ # API routes
β β βββ π analytics/ # Analytics endpoints
β β βββ π budgets/ # Budget CRUD
β β βββ π insights/ # AI insights
β β βββ π transactions/ # Transaction CRUD
β βββ π budgets/ # Budget management page
β βββ π dashboard/ # Main dashboard
β βββ layout.tsx # Root layout
β βββ page.tsx # Home page
β βββ globals.css # Global styles
βββ π components/ # React components
β βββ π budgets/ # Budget-related components
β βββ π charts/ # Chart components
β βββ π dashboard/ # Dashboard components
β βββ π insights/ # AI insights components
β βββ π sections/ # Page sections
β βββ π transactions/ # Transaction components
β βββ Navbar.tsx # Navigation component
βββ π contexts/ # React contexts
βββ π hooks/ # Custom React hooks
βββ π lib/ # Utility libraries
βββ π models/ # Database schemas
βββ π public/ # Static assets
βββ package.json # Dependencies
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/transactions |
Get all transactions |
| POST | /api/transactions |
Create new transaction |
| PUT | /api/transactions/[id] |
Update transaction |
| DELETE | /api/transactions/[id] |
Delete transaction |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/budgets |
Get budgets by month/year |
| POST | /api/budgets |
Create new budget |
| PUT | /api/budgets/[id] |
Update budget |
| DELETE | /api/budgets/[id] |
Delete budget |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/analytics/dashboard |
Get dashboard summary |
| GET | /api/analytics/monthly |
Get monthly spending data |
| GET | /api/analytics/categories |
Get category breakdown |
| GET | /api/analytics/budgets |
Get budget analytics |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/insights/budget-suggestions |
Get AI budget recommendations |
The platform integrates with Google Gemini for intelligent budget recommendations:
- Spending Pattern Analysis: Identifies trends and anomalies
- Budget Optimization: Suggests optimal budget allocations
- Risk Assessment: Evaluates financial health and risks
- Personalized Insights: Provides actionable recommendations
- Fallback Logic: Rule-based suggestions when AI is unavailable
- Push code to GitHub
- Connect repository to Vercel
- Add environment variables in Vercel dashboard
- Deploy automatically on push
MONGO_URI=your_production_mongodb_uri
GEMINI_API_KEY=your_gemini_api_key
NEXTAUTH_SECRET=your_production_secret
NEXTAUTH_URL=https://your-domain.comUse the included test script to verify API endpoints:
# Open browser console and run:
node test-api.jsContributions are welcome! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Ayush Tiwari
- Email: ayusht9919@gmail.com
- GitHub: @Ayush5071
- MNNIT Allahabad β’ B.Tech ECE β’ CPI: 7.88
- Hack36 - CC MNNIT: 9th place among 100+ teams (2025)
- Innodev - ES MNNIT: 1st place among 100+ teams (2025)
- Dev or Die - MNNIT: 1st place among 50+ teams (2024)
- Quintathlon - ES MNNIT: 3rd place (2024)
This project is licensed under the MIT License.
Made with β€οΈ by Ayush Tiwari
β Star this repository if you found it helpful!