Contents
User bounded context — files at a glance.
Locations
| Layer | Path |
|---|---|
| Domain | internal/domain/user/ |
| Application | internal/application/user/ |
| HTTP | internal/adapters/http/handler/user_handler.go |
| GoUI | internal/adapters/goui/controller_account_users.go |
| Persistence | internal/adapters/persistence/postgres/user_repository.go |
| SQL | db/queries/ (users) |
| Wiring | bootstrap/wire_user.go, wire_http.go, wire_goui.go (UserDeps) |
Application (use cases)
| File | Typical role |
|---|---|
service.go |
Service facade — transport read surface |
query.go |
GetHandler, ListHandler |
command.go |
Register, Activate, Delete, Restore, Change* |
access.go |
List / profile / role authorization checks |
dto.go |
Outbound view/DTO |
locale_policy.go |
Preferred locale |
ports.go |
Application external ports (if needed) |
HTTP surfaces
Registration: internal/adapters/http/server.go → /api/v1/users/...
| Method | Path | Handler method | Permission (summary) |
|---|---|---|---|
| POST | /users/ |
Register | public |
| GET | /users/ |
List | users:list |
| GET | /users/:id |
Get | auth |
| GET | /users/me |
Me | auth |
| PATCH | /users/me/* |
ChangeMy* / ChangeLocale | auth |
| POST | /users/create |
AdminCreate | users:list |
| POST | /users/:id/activate |
Activate | users:activate |
| DELETE | /users/:id |
Delete | users:delete |
| POST | /users/:id/restore |
Restore | users:restore |
| PATCH | /users/:id/role |
ChangeRole | users:role:change |
Panel surfaces
| Path | Screen | Controller (in file) |
|---|---|---|
/dashboard/users |
users |
list |
/dashboard/users/new |
user-new |
new |
/dashboard/users/:id |
user-show |
show |
/dashboard/account |
account |
account (same file family) |
Route table: adapters/goui/routes.go → pageRoutes().
End-to-end (list)
API: READING.md — Golden path A
Panel: READING.md — Golden path B
Related
- Auth session / JWT → map/auth.md
- RBAC permission constants →
pkg/rbac - Architecture → DOMAIN.md