Briefcase is a full-stack web application designed to help you manage your personal finances with ease. Track your income and expenses, set financial goals, and get a clear overview of your financial health.
Disclaimer: This application is in active development and may not function properly.
-
Income and Expense Tracking: Easily log your income and expenses to see where your money is going.
-
Goal Setting: Set financial goals and track your progress towards achieving them.
-
Financial Overview: Get a clear and concise overview of your total savings, monthly income, expenses, and net savings.
-
Monthly Breakdown: View a detailed breakdown of your finances for each month.
-
Secure Authentication: User authentication system to keep your financial data private and secure.
Follow these steps to set up Briefcase on your local machine:
-
Node.js and npm installed on your machine
-
MongoDB installed and running locally or accessible via a cloud service
-
Git installed on your machine
git clone [https://github.com/zaydengit/briefcase.git](https://github.com/zaydengit/briefcase.git)
cd briefcaseFollow directions provided in the backend and frontend README.md files.
During the devlopment of Briefcase, I gained valuable exprience across multiple areas:
- Full-Stack Development: I learned how to develop both frontend and backend components of a web application to create a seamless user experience.
- React.js: I utilized and refined my skills in React.js, taking advantage of its component-based architecture to build dynamic interfaces.
- TypeScript: I learned Typescript for this project, taking my preexisting skills in Node.js to another level.
- TailwindCSS: I stylized each web component and page with TailwindCSS, learnign the principles of CSS and how to create a clean interface.
- MongoDB and Mongoose: I heavily utilized Mongoose in this project to store all user-related data.
- Deployment: I gained experience in deploying web applications, deploying both the frontend and backend to the cloud platform Vercel.
- UI/UX Design: I focused on creating an intuitive and minimalistic interface for Briefcase, and improved a lot on it during the course of its development.
- Project Management: I streamlined my development by making use of a Kanban board to improve efficiency and issue handling.
By working on Briefcase, I not only created a valuable application but also enhanced my technical skills and gained valuable insights into the proccess of developing a real-word web application by hand.
This project is licensed under the MIT license.