A full-stack expense tracking application built with React, Express, and PostgreSQL. Implements JWT authentication, protected REST APIs, and secure production deployment on a self-managed VPS.
- User authentication (JWT)
- Protected REST API
- Expense CRUD operations
- Client–server architecture with separated frontend and backend
- PostgreSQL-backed persistent storage
React · Express · PostgreSQL · JWT · Zustand · Nginx · PM2 · Ubuntu VPS
- Self-managed Ubuntu VPS
- Nginx reverse proxy with HTTPS (Let’s Encrypt)
- PostgreSQL (local VPS instance)
- PM2 for Node.js process management
- Data visualisation and expense analytics
- Enhanced dashboard metrics