Metadata-Version: 2.4
Name: tba-app-backend-developer
Version: 0.4.0.dev2
Summary: Developer OIDC/OAuth backend application for TBA.
License-Expression: Apache-2.0
Requires-Python: >=3.10,<3.15
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Requires-Dist: tba-app-backend-core (==0.4.0.dev2)
Requires-Dist: tba-auth (==0.4.0.dev2)
Requires-Dist: tba-router-administration-gate (==0.4.0.dev2)
Requires-Dist: tba-router-oauth-authorization-server-metadata (==0.4.0.dev2)
Requires-Dist: tba-router-oauth-registration (==0.4.0.dev2)
Requires-Dist: tba-router-oidc-discovery (==0.4.0.dev2)
Project-URL: Homepage, https://github.com/tigrbl/tigrbl_auth
Project-URL: Repository, https://github.com/tigrbl/tigrbl_auth
Project-URL: Source, https://github.com/tigrbl/tigrbl_auth/tree/master/pkgs/90-backend-apps/tba-app-backend-developer
Description-Content-Type: text/markdown

# tba-app-backend-developer

Developer self-service OAuth/OIDC client registration API front door.

## Surface

| Property | Value |
| --- | --- |
| Product surface | `developer-app` |
| Intended UIX | `@tba/ui-developer` |
| Exposes | Dynamic client registration, client management, client metadata, JWKS/discovery helpers |
| Excludes | Tenant lifecycle operations, platform authority assignment, service identity administration |

## Entrypoint

```python
from tba_app_backend_developer import app, build_app
```

## Local dev deployment

```powershell
docker compose -f docker/docker-compose.developer-app.yml up -d --build
```

The dev deployment listens on `http://localhost:8017` and uses
`dev-developer-key` for the admin client-management routes and RPC methods.

Useful checks:

| Check | Expected |
| --- | --- |
| `GET /openapi.json` | Developer OpenAPI document |
| `GET /openrpc.json` | Client-management OpenRPC document |
| `POST /register` | Dynamic client-registration route exists without admin key |
| `GET /client` | Admin-key guarded client REST surface |
| `GET /clientregistration` | Admin-key guarded client-registration REST surface |
| `GET /tenants/public/.well-known/jwks.json` | Tenant JWKS metadata helper |

The developer API intentionally does not expose `/tenant`, `/authorize`,
`/token`, or service/workload administration routes.

