Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/akkilesh-a/money-manager
A comprehensive banking app built with MERN stack!
https://github.com/akkilesh-a/money-manager
expressjs mongodb nodejs reactjs shadcn-ui vite
Last synced: 3 days ago
JSON representation
A comprehensive banking app built with MERN stack!
- Host: GitHub
- URL: https://github.com/akkilesh-a/money-manager
- Owner: Akkilesh-A
- License: mit
- Created: 2024-06-30T20:13:39.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2025-01-01T13:13:27.000Z (15 days ago)
- Last Synced: 2025-01-01T13:25:46.433Z (15 days ago)
- Topics: expressjs, mongodb, nodejs, reactjs, shadcn-ui, vite
- Language: TypeScript
- Homepage: https://money-manager.akkilesh.in/
- Size: 11.5 MB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Money Manager(MERN)
## ⚙️Tech Stack
### 🖥️ Frontend
| Framework | React.js |
| --- | --- |
| CSS framework | Tailwind CSS |
| UI Library | ShadCN |
| Build Tool | Vite |### 🔧 Backend
| Server, Routing | Express.js |
| --- | --- |
| Language | Node.js |
| Input Validation | Zod |
| Database Connection | Mongoose |
| Session Authentication | JWT |
| Password Hashing | Bcrypt |
| Assets cloud storage | Cloudinary |
| Image uploads | Multer |## 🔗Routes
### 🖥️ Frontend
| **Path** | **Component** |
| --- | --- |
| / | **``** |
| /signup | **``** |
| /signin | **``** |
| /home | **``** |
| /profile | **``** |
| /tags | **``** |
| /transactions | **``** |
| /send-money | **``** |### 🔧 Backend
| **HTTP Method** | **Endpoint** | **Controller Function** |
| --- | --- | --- |
| POST | /signin | `signIn` |
| POST | /signup | `signUp` |
| GET | /get-user-tags | `getUserTags` |
| POST | /add-new-tag | `addUserTag` |
| DELETE | /delete-user-tag | `deleteUserTag` |
| GET | /get-user-data | `getUserProfile` |
| POST | /update-profile | `updateProfile` |
| GET | /get-all-users | `getAllUsers` |
| GET | /get-user-spendings | `getUserSpendings` |
| POST | /create-spending-record | `createTransactionRecord` |## 📊 Database Design
### **Transactions Schema**
| **Attributes** | **Data Type** |
| --- | --- |
| from | ObjectId (ref: User) |
| to | ObjectId (ref: User) |
| amount | Number |
| title | String |
| description | String |
| dateTime | Date |
| tag | String |
| receiptURL | String |### **User Schema**
| **Attributes** | **Data Type** |
| --- | --- |
| name | String |
| email | String |
| password | String |
| imgURL | String |
| accountBalance | Number |
| phoneNumber | String |
| tags | Array of Strings |
| tagColors | Array of Strings |
| transactions | Array of ObjectIds (ref: Transaction) |
| isChild | Boolean |
| childConnectionStatus | Boolean |
| children | Array of ObjectIds (ref: User) |
| parentConnectionStatus | Boolean |
| parent | ObjectId (ref: User) |# 🤑Features
- [x] Tags - Transactions can be tagged with custom user tags
- [ ] Redux Store - To store session data
- [ ] Filters - Filter transactions based on tags, dates, etc…
- [x] Email Verification - Verification of users while signing up
- [ ] Monthly Mail - Monthly mail with that month’s spendings and transaction details as a csv export!