How ricamhay123/groupspace works
GroupSpace is a collaborative workspace and personal productivity app. Users sign in, create or join workspaces, then use shared task, notebook, expense, discussion, and calendar features; personal items remain user-scoped. The graph shows the Express entry point, frontend API path, and domain layers. README documents several capabilities whose implementation was not sampled; those are included without guessing their internal call wiring.
Main entry points: app.js Express app · expenses Expense ledger · dashboard.js Dashboard · api.js API client
Components 21
App Entry
- Dashboard
public/js/dashboard.js - API client
public/js/api.js - HTTP server
src/server.js - Express app
src/app.js
Identity & Membership
- Auth routes
src/modules/auth/auth.routes.js - Auth controller
src/modules/auth/auth.controller.js - Auth service
src/modules/auth/auth.service.js - Auth middleware
src/middleware/auth.middleware.js - Workspace routes
src/modules/groups/group.routes.js - Workspace controller
src/modules/groups/group.controller.js - Workspace service
src/modules/groups/group.service.js
Workspace Features
- Kanban tasks
src/modules/tasks - Shared notebook
src/modules/notebook - Expense ledger
src/modules/expenses - Discussions & activity
src/modules/discussions - Group calendar
src/modules/calendar - Debt calculation
src/utils/calculation.util.js
Personal Productivity
- Personal space
src/modules/personal-space
Other components
- User
- Browser UI
- Neon PostgreSQL
Connections 26
- User → Browser UI: uses
- Browser UI → Dashboard: loads
- Dashboard → API client: requests
- API client → Express app: calls API
- HTTP server → Express app: starts
- Express app → Auth routes: mounts
- Express app → Workspace routes: mounts
- Express app → Kanban tasks: mounts routes
- Express app → Shared notebook: mounts routes
- Express app → Expense ledger: mounts routes
- Express app → Discussions & activity: mounts routes
- Express app → Group calendar: mounts routes
- Express app → Personal space: mounts routes
- Auth routes → Auth controller: dispatches
- Auth controller → Auth service: calls
- Auth service → Neon PostgreSQL: reads/writes
- Workspace routes → Workspace controller: dispatches
- Workspace controller → Workspace service: calls
- Auth middleware → Neon PostgreSQL: validates identity
- Kanban tasks → Neon PostgreSQL: workspace data
- Shared notebook → Neon PostgreSQL: workspace data
- Expense ledger → Neon PostgreSQL: ledger data
- Expense ledger → Debt calculation: summarizes balances
- Discussions & activity → Neon PostgreSQL: discussion data
- Group calendar → Neon PostgreSQL: event data
- Personal space → Neon PostgreSQL: private items