How boaz-itguy/betechified-capstone-project-group3b works
This is a REST API for user registration/login and authenticated personal-expense management. Clients send requests through the Express server and route modules; authentication handlers create users or issue tokens, while protected expense routes validate tokens before handlers read or change user-owned expenses. Mongoose models and the database connection provide persistence. The graph reflects the sampled runtime code; the README is empty, so undocumented capabilities and additional wiring are not inferred.
Main entry points: server.js Express server · authController.js Auth handlers · expenseRoutes.js Expense routes · authRoutes.js Auth routes
Components 13
HTTP API
- Express server
server.js - Auth routes
routes/authRoutes.js - Expense routes
routes/expenseRoutes.js
Identity
- Auth handlers
controllers/authController.js - Token protection
middleware/authMiddleware.js - User model
models/User.js - Password hashing
- JWT library
Expense management
- Expense handlers
controllers/expenseController.js - Expense model
models/Expense.js - Database connection
config/db.js
Other components
- API client
- MongoDB
Connections 16
- API client → Express server: sends requests
- Express server → API client: returns responses
- Express server → Auth routes: mounts /auth
- Express server → Expense routes: mounts /expenses
- Express server → Database connection: connects database
- Auth routes → Auth handlers: dispatches auth
- Expense routes → Token protection: protects routes
- Expense routes → Expense handlers: dispatches expenses
- Auth handlers → User model: reads and creates
- Auth handlers → Password hashing: hashes and compares
- Auth handlers → JWT library: signs tokens
- Token protection → JWT library: verifies tokens
- Expense handlers → Expense model: reads and mutates
- Database connection → MongoDB: opens connection
- User model → MongoDB: persists users
- Expense model → MongoDB: persists expenses