Skip to content

Apfirebolt/expense_tracker_in_vue3_and_express

Repository files navigation

Expense Tracker App in MEVN Stack

Vue.js Express.js Node.js Headless UI Tailwind CSS

It is an Expense Management application written in MEVN (MongoDB, Express, Vue and Node) stack.

Features

  • User Authentication: Secure login and registration system.
  • Expense Management: Add, edit, and delete expenses.
  • Category Management: Organize expenses by categories.
  • Reports and Analytics: Visualize spending patterns with calendar.
  • Responsive Design: Works on both desktop and mobile devices.

Technologies Used

  • MongoDB: Database for storing user and expense data.
  • Express.js: Backend framework for building the API.
  • Vue.js: Frontend framework for building the user interface.
  • Node.js: Runtime environment for executing server-side code.
  • Headless UI: For dynamic styled components like modal and dropdown.
  • Tailwind CSS: For styling

Screenshots

Following are some of the screenshots of this app. It shows dashboard for a logged in user and forms for expense as well as the calendar view.

Dashboard Add Expense Calendar View Profile View

Installation

  1. Clone the repository:
git clone https://github.com/Apfirebolt/expense_tracker_in_vue3_and_express
  1. Navigate to the project directory:
cd expense_tracker_in_vue3_and_express
  1. Install dependencies for both frontend and backend:
npm install
cd client
npm install
cd ..
  1. Set up environment variables by creating a .env file in the root directory and adding the following:
MONGODB_URI=your_mongodb_uri
JWT_SECRET=your_jwt_secret

Usage

  1. Start the backend server:
npm run server
  1. Start the frontend development server:
cd client
npm run serve
  1. Open your browser and navigate to http://localhost:8080.

Contributing

  1. Fork the repository.
  2. Create a new branch:
git checkout -b feature-name
  1. Make your changes and commit them:
git commit -m 'Add some feature'
  1. Push to the branch:
git push origin feature-name
  1. Open a pull request.

License

This project is licensed under the MIT License.