| --- |
| title: Ipa2korg |
| emoji: π |
| colorFrom: green |
| colorTo: yellow |
| sdk: docker |
| app_port: 8000 |
| pinned: false |
| license: mit |
| tags: |
| - openai |
| - api-gateway |
| - educational |
| - docker |
| --- |
| |
| # Ipa2korg (Educational API Gateway) |
|
|
| **Educational / research deployment** of an OpenAI- and Anthropic-compatible |
| API gateway that routes requests through **user-owned** upstream credentials. |
|
|
| This Space is a learning project for multi-account API gateway design: |
| routing, quota tracking, admin UI, and local SQLite persistence. |
| It is **not** intended for production abuse or third-party site scraping. |
|
|
| ## Capabilities |
|
|
| - OpenAI-style `/v1` and Anthropic-style endpoints |
| - Browser admin UI for accounts, client keys, and runtime settings |
| - Local state under `/data` (enable HF Persistent Storage) |
|
|
| ## Scope |
|
|
| - You supply and manage your own upstream credentials |
| - Optional egress proxies and session cookies are **manual / self-hosted** |
| configuration for your own accounts β no challenge-solver sidecar is |
| started by this Space image by default |
|
|
| ## Deploy notes (HF Spaces) |
|
|
| 1. `app_port: 8000` matches the container listen address. |
| 2. `config.yaml` is baked into the image at `/run/grok2api/config.yaml`. |
| On a **public** Space secrets are visible β prefer a **Private** Space |
| and change the admin password after first login. |
| 3. Enable **Persistent Storage** so `/data` survives restarts. |
| 4. Default admin user is `admin`. Password is in `config.yaml` |
| (`bootstrapAdmin.password`). |
|
|
| ## Configuration |
|
|
| All runtime config lives in `config.yaml`. Legacy Python-era environment |
| variables are **not** read by this Go binary. |
|
|
| ## License |
|
|
| MIT |
|
|