A comprehensive web application for managing personal finances, tracking net worth, and analyzing spending patterns. Built with React, Node.js, and PostgreSQL.
-
Net Worth Tracking
- Connect bank accounts via Plaid API
- Manual account entry support
- Historical net worth visualization
- Asset and liability management
-
Income Management
- Salary tracking with tax calculations
- Support for multiple income sources
- Automatic paycheck calculations
- RSU/Stock compensation tracking
-
Expense Analysis
- Transaction categorization
- Spending trends visualization
- Bill tracking and analysis
- CSV import support
-
Financial Goals
- Goal setting and tracking
- Progress visualization
- Category-based organization
- Frontend: React, Tailwind CSS, Chart.js
- Backend: Node.js, Express
- Database: PostgreSQL
- APIs: Plaid Integration
- Authentication: JWT
- Clone the repository
git clone [repository-url]
cd personal-finance-dashboard
- Install dependencies
npm install
- Set up environment variables
Create a
.env
file in the root directory with:
REACT_APP_API_URL=your_api_url
PLAID_CLIENT_ID=your_plaid_client_id
PLAID_SECRET=your_plaid_secret
PLAID_ENV=sandbox
JWT_SECRET=your_jwt_secret
- Start the development server
npm start
- Node.js (v14 or higher)
- PostgreSQL
- Plaid Developer Account
- Create a PostgreSQL database
- Run the migrations:
npm run migrate
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Plaid API for financial account integration
- Chart.js for data visualization
- Tailwind CSS for styling