How majingamo/ebulodccis works
E-Bulod is a web-based CCIS equipment-borrowing system. Borrowers sign in, browse equipment, submit and track requests, and view notifications and trust points; admins manage inventory and requests, process returns, and review analytics and history. The browser client communicates with serverless API endpoints, which share authentication, validation, trust-point logic, and Supabase data helpers. The README documents additional frontend capabilities not visible in the sampled source. Browser-to-endpoint wiring is not established by the excerpts, so those links are dashed.
Main entry points: api.js API client · config.js API and trust helpers · requests.js Borrowing requests · equipment.js Equipment inventory
Components 21
Browser experience
- Login page
index.html - Borrower dashboard
borrower_dashboard.html - Admin dashboard
admin_dboard.html - Account creation
create_account.html - API client
js/api.js - Unified login
js/auth_unified.js - Image upload
js/cloudinary.js
Borrowing operations
- Equipment inventory
api/equipment.js - Borrowing requests
api/requests.js - Borrower accounts
api/borrowers.js - Bulk operations
api/bulk_operations.js - Notifications
api/notifications.js
Admin oversight
- Dashboard analytics
api/dashboard.js - Equipment history
api/history.js - Data export
api/export.js
Shared API services
- Authentication
api/auth.js - API and trust helpers
api/config.js
External services
- Supabase tables
- Cloudinary
Other components
- Borrower
- Admin
Connections 34
- Borrower → Login page: signs in
- Admin → Login page: signs in
- Login page → Unified login: handles login
- Unified login → Authentication: posts credentials
- Borrower → Borrower dashboard: uses
- Admin → Admin dashboard: uses
- Borrower dashboard → API client: requests data
- Admin dashboard → API client: requests data
- Account creation → API client: creates accounts
- API client → Authentication: calls endpoints
- API client → Equipment inventory: calls endpoints
- API client → Borrowing requests: calls endpoints
- API client → Borrower accounts: calls endpoints
- API client → Bulk operations: calls endpoints
- API client → Notifications: calls endpoints
- API client → Dashboard analytics: calls endpoints
- API client → Equipment history: calls endpoints
- API client → Data export: calls endpoints
- Equipment inventory → API and trust helpers: uses helpers
api/equipment.js - Borrowing requests → API and trust helpers: uses helpers
api/requests.js - Bulk operations → API and trust helpers: uses helpers
api/bulk_operations.js - Authentication → API and trust helpers: uses helpers
api/auth.js - Borrower accounts → API and trust helpers: uses helpers
api/borrowers.js - Notifications → API and trust helpers: uses helpers
api/notifications.js - Dashboard analytics → API and trust helpers: uses helpers
api/dashboard.js - Equipment history → API and trust helpers: uses helpers
api/history.js - Data export → API and trust helpers: uses helpers
api/export.js - API and trust helpers → Supabase tables: reads and writes
api/config.js - Image upload → Cloudinary: uploads images
- Equipment inventory → Borrowing requests: tracks borrowing
- Borrowing requests → Equipment history: records returns
- Borrowing requests → Notifications: updates borrowers
- Borrower accounts → Borrowing requests: provides borrower data
- Dashboard analytics → Data export: exports reports