Skip to content

Repository files navigation

kerberos-fe

Angular SPA for the Kerberos API gateway — provides a UI for all admin and auth-basic endpoints.

Tech stack

Concern Choice
Framework Angular 21 (standalone components + Signals)
Design system Angular Material (Azure/Blue theme)
API clients Generated via openapi-generator-cli (typescript-angular)
State Angular Signals only
Auth Session header (x-krb-session) via HttpInterceptor

Development

Prerequisites

  • Node 24+, npm 10+
  • Java 11+ (for openapi-generator-cli)

Install

npm ci

Run locally

npm start

Commands

Command Description
make codegen Regenerate typed API clients from OAS specs
make lint Run ESLint
make build/dev Development build
make build/prod Production build
make test Run unit tests (headless)

API client codegen

Typed clients are generated from the Kerberos OAS specs:

OAS spec Output
openapi/admin.yaml src/app/api/admin/
openapi/auth_basic.yaml src/app/api/auth-basic/

After updating a spec, run make codegen and commit the generated files.

Routing structure

/login                                              Public login page
/ (shell — requires session)
  /users                                            User list
  /users/:id                                        User detail
  /groups                                           Group list
  /groups/:id                                       Group detail
  /permissions                                      Permissions
  /debug/:backend/sessions                          Debug session list
  /debug/:backend/sessions/:id                      Debug session detail
  /debug/:backend/sessions/:id/calls                Session calls
  /flow                                             Flow viewer
  /oas/:backend                                     Backend OAS viewer
  /auth-basic/organisations                         Organisation list
  /auth-basic/organisations/:orgId                  Organisation detail
  /auth-basic/organisations/:orgId/users            Org user list
  /auth-basic/organisations/:orgId/users/:userId    Org user detail
  /auth-basic/organisations/:orgId/groups           Org group list
  /auth-basic/organisations/:orgId/groups/:groupId  Org group detail

Project structure

src/app/
├── core/
│   ├── auth/                  AuthService (signals), AuthGuard
│   └── interceptors/          SessionInterceptor (x-krb-session header)
├── api/
│   ├── admin/                 Generated admin API client
│   └── auth-basic/            Generated auth-basic API client
├── features/
│   ├── login/                 Login page
│   ├── users/                 Admin user management
│   ├── groups/                Admin group management
│   ├── permissions/           Permissions viewer
│   ├── debug/                 Debug sessions + calls
│   ├── flow/                  Flow viewer
│   ├── oas/                   Backend OAS viewer
│   └── auth-basic/            Auth Basic (orgs, org-users, org-groups)
└── shared/
    ├── shell/                 App shell (sidenav + toolbar)
    └── components/
        ├── page-header/       Reusable page title component
        └── error-display/     APIErrorResponse display component

About

An SPA frontend for the Kerberos API gateway.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages