- CoinChange is a MERN-based expense management platform designed to help users efficiently track their expenses. It provides insights into total income, expenses, balance, and transaction history, along with features for bill splitting and debt management among friends. User can Add bills and Dues which he have to pay and he got remainder from our side and user can save money and also track how much money he have saved till the date. User have a inbox in which he can accept the freind request of freinds and the accessiblity to the groups.
- Dashboard: Provides a comprehensive view of total income, expenses, balance, and transaction history.
- Groups: Facilitate bill splitting and simplify debt management among friends.In Simply debt there is a chat box where user can do chat with respective members of groups and can simplify bills.
- Friend Requests: Users can send friend requests and seamlessly add friends to their groups, enhancing collaboration and convenience in bill management.
- Bills And Dues: User can add a monthly,daily and weekly bills and dues which user have to pay and we send email to user so that they will not miss the date.
- Savings: On this page User can Set a goal for some purpose and save money for that purpose.
- Profile: User can see total expense , income , freinds and groups on the profile page together.
CoinChange is built using the MERN stack along with several other technologies to enhance functionality and user experience.
- React.js: A JavaScript Library for Building User Interfaces, Particularly Single-Page Applications. React Allows Us to Create Reusable UI Components.
- HTML: The Standard Markup Language for Creating Web Pages. Used for Structuring the Content.
- CSS: A Stylesheet Language Used for Describing the Presentation of a Document Written in HTML. CSS Is Used to Style the Application.
- JavaScript: A Programming Language That Enables Interactive Web Pages. JavaScript Is Used for Adding Dynamic Behavior to the Application.
- Node.js: A JavaScript Runtime Built on Chrome's V8 JavaScript Engine. Node.js Is Used for Building the Server-Side of the Application.
- MongoDB: A NoSQL Database Program That Uses JSON-Like Documents with Optional Schemas. MongoDB Is Used for Storing Data.
- Express.js: A Web Application Framework for Node.js, Designed for Building Web Applications and APIs. Express.js Is Used to Create the Backend Services.
- Google OAuth: Used for Authentication to Allow Users to Sign In with Their Google Accounts.
- Nodemailer: A Module for Node.js Applications to Allow Easy Email Sending. Used for Sending Notifications and Friend Requests.
To Get a Local Copy of the Project Up and Running, Follow These Steps:
- Node.js and npm Installed on Your Machine.
- MongoDB Installed and Running.
-
Clone the Repository git clone https://github.com/yourusername/CoinChange.git
-
Navigate to the Project Directory cd olympus
-
Install Dependencies for the Backend cd backend npm install
-
Install Dependencies for the Frontend cd ../frontend npm install
-
Create a .env File in the Backend Directory and Add Your Environment Variables (e.g., MongoDB URI, Google OAuth Credentials).
-
Run the Backend Server cd backend npx nodemon server.js
-
Run the Frontend Server cd ../frontend npm start
- Register or Log In Using Your Gmail Account.
- Add Your Income and Expenses to Get an Overview of Your Financial Status.
- You have a Bills and Dues Section where you can add your bill and we send you a mail as remainder to pay your on time.
- You having Savings Page where you can set a goal for Savings and update it whenever Neccessary.
- Create Groups and Add Friends to Split Bills and Manage Debts.
- View Your Transaction History and Track Your Spending Habits.
- kitarth Shrivastav - []
- Rudra Sharma - [[email protected]]
- Vijay Anand Revanur- []
Project Link: https://github.com/Vijay-AR/Olympus