Skip to content

My previous project "Expensify" rebuilt using MongoDB with improved codebase!

Notifications You must be signed in to change notification settings

yusha0123/Expense-Tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Expensify

A MERN Stack project for expense tracking

Expensify is a MERN Stack project that allows users to track their expenses and generate reports. It has the following features:

🔒 Authentication with JWT: Expensify uses JWT for authentication. This means that users will receive a JWT token after logging in, which they can use to access protected resources.

🔐 Protected Routing (Frontend & Backend): Ensuring security, Expensify implements protected routing both on the frontend and backend. This guarantees that only authenticated users with appropriate permissions can access specific routes, enhancing data security.

🔄 Seamless data fetching using Tan Stack Query: Expensify uses Tan Stack Query to fetch data from the backend. This allows for seamless and efficient data fetching.

💳 Razorpay payment gateway for upgrading to a pro version with premium features like leaderboard and report generation: Expensify uses Razorpay as its payment gateway. This allows users to upgrade to the pro version and access premium features like the leaderboard and report generation.

📈 Reports visualized using Chart JS 2: Expensify uses Chart JS 2 to visualize reports. This allows for interactive and visually appealing reports.

📊 Download reports (pro version) as CSV files for monthly or yearly periods, which are also stored in the cloud after generating: Pro users can download their reports as CSV files for monthly or yearly periods. These reports are also stored in cloudinary after generating.

📜 Pagination of Expenses: Expensify provides the ability to paginate expenses, allowing users to view their data in manageable pages.

🔑 Reset Password Feature: Users can easily reset their passwords through the backend, which utilizes the Nodemailer server for secure password reset processes.

🏆 Leaderboard (pro version): Users can see the total expenses of all users in the application, giving a sense of competition and comparison.

📱 Fully responsive UI using Chakra UI: Expensify has a fully responsive UI using Chakra UI. This means that it looks great on all devices, including mobile devices.

📂 MongoDB database for storing data: Expensify uses MongoDB to store data. This allows for scalable and flexible data storage.

📚 Download history for tracking previous downloads: Users can check their previous downloads from the download history page. This allows them to easily track their downloaded reports.