How samsraina/kizen works
Kizen is an issue-tracking and workspace application with a React web client and Go workspace and ticket services backed by shared PostgreSQL access. Users reach the web application through public and authenticated routes; documented capabilities include browsing workspaces, viewing project boards and tickets, and account authentication. On the backend, requests pass through handlers and services to repositories and database queries. The README describes a different target modular-monolith layout than the supplied tree, so this map follows the implementation shown; unsampled frontend-to-API wiring is not asserted.
Main entry points: cmd/main.go Workspace HTTP · database Database queries · cmd/main.go Ticket HTTP · server.ts Web server
Components 21
Web application
- Web server
web/server.ts - Route router
web/src/router.tsx - User routes
web/src/routes - Workspace UI
web/src/components/workspaces/interactions - API client
web/src/lib/api-client.ts - Authentication
web/src/lib/auth.ts
Workspace service
- Workspace HTTP
services/workspace/cmd/main.go - Workspace handler
services/workspace/internal/handler/handler.go - Workspace service
services/workspace/internal/service/service.go - Workspace domain
services/workspace/internal/domain/types.go - Workspace repository
services/workspace/internal/infrastructure/repository/repository.go
Ticket service
- Ticket HTTP
services/ticket/cmd/main.go - Ticket handler
services/ticket/internal/handler/handler.go - Ticket service
services/ticket/internal/service/service.go - Ticket domain
services/ticket/internal/domain/ticket.go - Ticket repository
services/ticket/internal/infrastructure/repository/postgres.go
Shared platform
- Database queries
internal/database - PostgreSQL
- HTTP middleware
internal/middleware/auth.go
Other components
- User
- Auth provider
Connections 19
- User → Web server: requests pages
web/server.ts - Web server → Route router: serves application
- Route router → User routes: loads routes
web/src/router.tsx - User → Workspace UI: uses board
- Workspace HTTP → Workspace handler: registers handler
services/workspace/cmd/main.go - Workspace handler → Workspace service: calls
services/workspace/internal/handler/handler.go - Workspace service → Workspace repository: calls
services/workspace/internal/service/service.go - Workspace repository → Database queries: queries
services/workspace/internal/infrastructure/repository/repository.go - Database queries → PostgreSQL: reads and writes
- Ticket HTTP → Ticket handler: registers routes
services/ticket/cmd/main.go - Ticket handler → Ticket service: calls
services/ticket/internal/handler/handler.go - Ticket service → Ticket repository: calls
services/ticket/internal/service/service.go - Ticket repository → Database queries: uses queries
services/ticket/internal/infrastructure/repository/postgres.go - Workspace HTTP → HTTP middleware: installs
services/workspace/cmd/main.go - Ticket HTTP → HTTP middleware: installs
services/ticket/cmd/main.go - User → Authentication: signs in
- Authentication → Auth provider: authenticates
- Workspace UI → API client: requests data
- API client → Workspace HTTP: calls service API