FinHandle is a comprehensive financial management application designed to help users track their income, expenses, and investments effectively. It provides a user-friendly interface to manage personal finances, set budgets, and gain insights into spending habits.
- Income Tracking: Easily record and categorize all sources of income.
- Expense Management: Log daily expenses, categorize them, and visualize spending patterns.
- Investment Portfolio: Monitor your investments and track their performance.
- Budgeting Tools: Set financial goals and create budgets to stay on track.
- Financial Reports: Generate detailed reports to understand your financial health.
- User Authentication: Secure user login and registration.
- Node.js: JavaScript runtime environment.
- Express.js: Web application framework for Node.js.
- MongoDB: NoSQL database for data storage.
- Mongoose: ODM for MongoDB and Node.js.
- JWT (JSON Web Tokens): For authentication and authorization.
- Bcrypt: For password hashing.
- React: JavaScript library for building user interfaces.
- Vite: Next-generation frontend tooling.
- Tailwind CSS: A utility-first CSS framework for rapid UI development.
- React Router: For declarative routing.
- Axios: For making HTTP requests.
Follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.
Before you begin, ensure you have the following installed:
- Node.js: Download & Install Node.js
- npm (Node Package Manager) or Yarn: Comes with Node.js, or install Yarn globally:
npm install -g yarn - MongoDB: Download & Install MongoDB
git clone https://github.com/your-username/FinHandle.git
cd FinHandle-
Navigate to the
backenddirectory:cd backend -
Install backend dependencies:
npm install # or yarn install -
Create a
.envfile in thebackenddirectory and add your environment variables. Aconfigfolder exists within the backend, so this is where the .env would likely be used.PORT=5000 MONGO_URI=your_mongodb_connection_string JWT_SECRET=your_jwt_secret
Replace
your_mongodb_connection_stringwith your MongoDB URI (e.g.,mongodb://localhost:27017/finhandlefor local or a MongoDB Atlas URI).
Replaceyour_jwt_secretwith a strong, random string. -
Run the backend server:
npm start # or yarn startThe backend server will run on
http://localhost:5000(or your specified PORT).
-
Navigate to the
frontenddirectory:cd ../frontend -
Install frontend dependencies:
npm install # or yarn install -
Run the frontend development server:
npm run dev # or yarn devThe frontend application will be available at
http://localhost:5173(or the default Vite port).
Once both the backend and frontend servers are running, open your web browser and navigate to http://localhost:5173. You can then register a new user or log in with existing credentials to start managing your finances.