Finance Platform is a professional-grade personal finance management ecosystem designed to empower users with comprehensive tools for tracking expenses, managing investments, and planning financial goals. Built with a robust Java backend and a modern, responsive frontend, it delivers a secure and intuitive banking experience.
- Atomic Fund Transfers: Secure, transactional money transfers between users with automatic rollback on failure.
- Transaction History: Detailed logs of all incoming and outgoing funds with intuitive visual indicators (Green for Income, Red for Expense/Transfer).
- Unified Activity Feed: A single stream combining stock transfers and daily expenses for a complete financial overview.
- Smart Tracking: Categorize daily spending (Food, Transport, Utilities, etc.) and visualize data with interactive doughnut charts.
- Recurring Bills Engine: configure automated monthly payments for rent, subscriptions, or loans. The system processes these automatically via an integrated scheduler.
- Budgeting: Set monthly limits per category and track utilization in real-time.
- Real-Time Data: Integrated CoinGecko API for live cryptocurrency prices (Bitcoin, Ethereum, etc.) in INR (₹).
- Portfolio Tracker: Buy digital assets using your account balance, track current value vs. invested amount, and monitor portfolio performance dynamically.
- Simulated Trading: Execute buy orders with cheat-proof validation against user balance.
- Savings Goals: Create custom targets (e.g., "New Car", "Vacation") and allocate funds.
- Progress Visualizers: Dynamic progress bars show completion percentage and remaining amounts.
- Goal Management: Easy top-up and deletion (with automatic refund to main balance).
- Glassmorphism Design: A premium, modern aesthetic with translucent cards, smooth gradients, and backdrop blurs.
- Dark/Light Mode: Fully thematic interface with a one-click toggle that persists user preference.
- Responsive Layout: Adaptive grid system that works seamlessly on desktop and mobile.
- Profile Management: Upload custom profile pictures and manage personal details.
- PDF Statements: Generate and download professional monthly statements using iText.
- Enterprise Security:
- BCrypt Hashing: Industry-standard password encryption.
- Session Management: Secure, role-based access control (User, Admin, Advisor).
- Input Validation: Strict server-side validation for all financial inputs.
| Component | Technologies |
|---|---|
| Backend | Java Servlets (RMSE), JSP, JDBC, Multithreading |
| Database | MySQL / HSQLDB (Compatible), Connection Pooling |
| Frontend | HTML5, CSS3 (Variables, Flexbox, Grid), JavaScript (ES6+) |
| Libraries | Chart.js (Visuals), Gson (JSON Parsing), iText (PDF), JBCrypt |
| Build | Maven (Dependency Management) |
| Server | Apache Jetty / Tomcat |
- Java Development Kit (JDK) 8 or higher
- Maven 3.x
- MySQL Server (Optional, defaults to embedded/local config)
-
Clone the Repository
git clone https://github.com/yourusername/fintoo-platform.git cd fintoo-platform -
Database Configuration
- The project includes a
schema.sqlfile insrc/main/resources. - Configure your database credentials in
DBConnection.java.
- The project includes a
-
Build the Project
mvn clean package
-
Run the Application
mvn jetty:run
-
Access the Platform
- Open your browser and navigate to:
http://localhost:8080/finance
- Open your browser and navigate to:
For testing purposes, the system is pre-loaded with the following accounts:
| Role | Password | |
|---|---|---|
| User | user@finance.com |
user123 |
| Admin | admin@finance.com |
admin123 |
| Advisor | advisor@finance.com |
advisor123 |
This project is licensed under the MIT License - see the LICENSE file for details.