-
Comprehensive Dashboard
- Financial health overview
- Monthly spending trends
- Net worth tracking
-
Income Management
- Multiple income source tracking
- Recurring income detection
- Income categorization
-
Expense Tracking
- Smart expense categorization
- Budget alerts and notifications
- Receipt scanning integration
-
Investment Monitoring
- Real-time portfolio tracking
- Asset allocation visualization
- Historical performance charts
-
Transaction System
- Advanced filtering (date, amount, category)
- Bulk transaction operations
- CSV import/export
- π Secure authentication (Google OAuth + JWT)
- β‘ Redis caching for frequent queries
- π Interactive data visualizations
- π± Fully responsive design
- π Real-time data synchronization
| Technology | Purpose |
|---|---|
| Next.js 14 | Framework with App Router |
| TypeScript | Type safety |
| Tailwind CSS | Utility-first styling |
| shadcn/ui | Beautiful component library |
| Framer Motion | Smooth animations |
| Chart.js | Data visualization |
| NextAuth.js | Authentication |
| React Hook Form And Zod | Form management |
| Redux | State management |
| Axios | HTTP requests |
| Technology | Purpose |
|---|---|
| Node.js | Runtime environment |
| Express | Web framework |
| MongoDB | Database (with Mongoose) |
| Redis | Caching layer |
| JWT | Authentication tokens |
| Prisma | ORM for MongoDB |
| Bcrypt | Password hashing |
| Nodemailer | Email notifications |
- Node.js v18+
- MongoDB Atlas account or local MongoDB
- Redis server
- Google OAuth credentials
- Git
- Clone the repository
git clone https://github.com/yourusername/balanc.git
cd balanc- Node.js
- MongoDB
Navigate to the backend directory:
cd frontendNavigate to the backend directory:
cd backendNavigate to the backend directory:
cd backend
Install dependencies:
npm installStart the backend server:
npm run dev
node index.jsNavigate to the frontend directory:
cd frontendInstall dependencies:
npm installStart the frontend server:
npm run dev# ========================
# π Server Configuration
# ========================
PORT=8000
NODE_ENV=production
BACKEND_APP_URL=http://localhost:8000
CLIENT_APP_URL=http://localhost:3000
# ========================
# ποΈ Database Configuration
# ========================
DATABASE_URL=mongodb://localhost:27017/balanc_prod
# ========================
# π Authentication
# ========================
JWT_SECRET_KEY=your_strong_jwt_secret_here
SESSION_SECRET=your_session_secret_here
# ========================
# π§ Email Service
# ========================
SMTP_HOST=your.smtp.server.com
SMTP_USER=your_smtp_username
SMTP_PASSWORD=your_smtp_password
FROM_EMAIL=[email protected]
# ========================
# π Performance & Caching
# ========================
REDIS_HOST=localhost
REDIS_URL=redis://localhost:6379
REDIS_PASSWORD=your_redis_password
REDIS_URL1=redis_backup_url_if_needed# ========================
# π Application URLs
# ========================
NEXTAUTH_URL=http://localhost:3000
NEXT_PUBLIC_BACKEND_URL=http://localhost:8000
# ========================
# π Authentication
# ========================
NEXTAUTH_SECRET=your_nextauth_secret_here
GOOGLE_CLIENT_ID=your_google_client_id.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=your_google_client_secret_here
# ========================
# π Analytics & APIs
# ========================
NEXT_TELEMETRY_DISABLED=1
ANALYZE=true
# RapidAPI Configuration
X_RAPIDAPI=your_rapidapi_key
NEXT_PUBLIC_RAPIDAPI1=api_key_1
NEXT_PUBLIC_RAPIDAPI2=api_key_2
NEXT_PUBLIC_RAPIDAPI3=api_key_3
NEXT_PUBLIC_RAPIDAPI4=api_key_4
# ========================
# π οΈ Environment
# ========================
NODE_ENV=productionContributions are welcome! Please fork the repository and create a pull request with your changes. Make sure to follow the code style and include relevant tests.
For any questions or suggestions, feel free to contact me.
Happy coding!






