LifeLedger
Personal Finance & Food Tracking System
nextjstypescriptpostgresqldocker


A three tier application for tracking personal finances, investments, lending/borrowing, and food consumption with detailed analytics and admin management.
Features
Finance Management
- Expenses Tracking - Record expenses with categories, payment methods, and tags
- Income Tracking - Track income sources with detailed descriptions
- Investment Management - Track various investment types (SIP, CID, SSF, Stocks, Fixed Deposits, etc.)
- Lending & Borrowing - Manage money to pay and money to receive with status tracking
- Financial Analytics - Comprehensive dashboards with charts and summaries
- Date Range Filtering - Filter transactions by day, week, month, or custom ranges
- Pagination - Efficient data display with pagination support
Food Tracking
- Food Logs - Record meals with cost, calories, and meal types
- Category Management - Create and manage custom food categories
- Food Analytics - Track spending, calories, and meal patterns
- Day/Week/Month Filtering - Filter food logs by time periods
- Visual Statistics - Beautiful cards and charts for food insights
Admin Features
- User Management - Full CRUD operations for user accounts
- User Analytics - Platform-wide statistics and user activity metrics
- Password Reset - Admin can reset user passwords
- Account Status Management - Activate, deactivate, or suspend accounts
- Role Management - Assign USER or ADMIN roles
- Audit Logs - Track all admin actions
- System Settings - Manage application-wide settings
User Features
- Dashboard - Comprehensive overview of all financial data
- Analytics - Advanced graphical analytics for all data types
- Multi-currency Support - Single currency (NPR) for simplified tracking
- Secure Authentication - JWT-based authentication with refresh tokens
- Responsive Design - Works seamlessly on desktop and mobile
Tech Stack
Backend
- Framework: NestJS 10
- Language: TypeScript
- Database: PostgreSQL 15
- ORM: TypeORM
- Cache: Redis 7
- Authentication: JWT + Passport
- Validation: class-validator, class-transformer
- API Documentation: Swagger/OpenAPI
- Rate Limiting: @nestjs/throttler
Frontend
- Framework: Next.js 14 (App Router)
- Language: TypeScript
- Styling: Tailwind CSS
- Charts: Recharts
- State Management: Zustand
- HTTP Client: Axios
- Forms: React Hook Form
- UI Components: Headless UI
Infrastructure
- Containerization: Docker & Docker Compose
- Database: PostgreSQL 15 Alpine
- Cache: Redis 7 Alpine
- Node Version: 18 LTS
- Docker
Loading similar projects...