Expense Tracker is a simple and efficient web application designed to help you track your expenses. It provides a user-friendly interface for recording and categorizing your spending, allowing you to gain insights into your financial habits and manage your budget effectively.
- User Authentication: Register an account or log in securely to track your expenses.
- Expense Logging: Add new expenses with details such as date, category, description, and amount.
- Expense Categories: Categorize your expenses for better organization and analysis.
- Expense History: View a detailed history of your expenses, including date, category, description, and amount.
- Expense Summary: Get an overview of your spending habits with a summary of total expenses by category.
- Search and Filters: Easily search and filter your expenses based on various criteria.
- Responsive Design: Access and use the application seamlessly on desktop, tablet, and mobile devices.
Expense Tracker is built using the following technologies:
- Frontend: HTML, CSS, Typescript, React, Chart.js
- Backend: Node.js, Express.js, MongoDB
- Authentication: JSON Web Tokens (JWT), googleOAuth
- To run Expense Tracker locally, follow these steps:
- Clone the repository from GitHub:
git clone https://github.com/oebelus/expense-tracker.git
-
Navigate to the project directory:
cd expense-tracker
-
Install the dependencies for both frontend and backend:
cd frontend
npm install
cd ../backend
npm install
- Set up environment variables:
- Create a .env file in the backend directory, add the following variables to .env:
MONGODB_URI=your_mongodb_uri
CLIENT_ID=google_oauth_client_id
CLIENT_SECRET=google_oauth_client_secret
OAUTH_REDIRECT_URL=google_oauth_redirect_url
-
Start the backend server:
npm start
-
In a new terminal, start the frontend development server:
cd ../frontend
npm start
- Open your browser and visit http://localhost:4000 to use Expense Tracker locally.