Campus Coin is a financial management application designed to help users manage their expenses, track financial data, and visualize spending habits. The application includes user authentication, a dashboard for financial analysis, and data visualization using charts.
- User Registration and Login
- Password Reset via Email
- Dashboard with Financial Data Visualization
- Expense Tracking by Category
- Top Expenses Visualization
- Net Amount and Cashflow Charts
- Weekly Expenses Breakdown
- Logout Functionality
- React.js for the frontend
- Node.js and Express.js for the backend
- MongoDB for the database
- Chart.js for data visualization
- Axios for HTTP requests
- CSS for styling
- Node.js and npm installed on your local machine
- MongoDB database set up
-
Clone the repository:
git clone https://github.com/your-username/campus-coin.git cd campus-coin
-
Install backend dependencies:
cd backend npm install
-
Install frontend dependencies:
cd ../frontend npm install
-
Start the backend server:
cd backend npm start
The backend server will run on
http://localhost:3000
. -
Start the frontend development server:
cd ../frontend npm start
The frontend server will run on
http://localhost:3001
.
POST /api/auth/signup
- User registrationPOST /api/auth/login
- User loginPOST /api/auth/forgot-password
- Request password resetPOST /api/auth/reset-password
- Reset passwordGET /api/financial-data
- Fetch financial data for the dashboard
-
Register a new account:
- Navigate to the Signup page and create a new account.
-
Login:
- Navigate to the Login page and enter your credentials to log in.
-
Reset Password:
- If you forget your password, use the Forgot Password link on the Login page to request a reset.
-
Dashboard:
- After logging in, you will be redirected to the dashboard where you can view your financial data and visualize expenses.
-
Logout:
- Use the Logout button in the dashboard header to log out of the application.
Contributions are welcome! Please fork the repository and create a pull request with your changes. Ensure that your code follows the project's coding standards and includes appropriate tests.
This project is licensed under the MIT License.
- Thanks to the open-source community for their invaluable resources and tools.
For any issues or feature requests, please open an issue on the GitHub repository.