JustAPI Documentation Site β Full Rebuild Plan (FastAPI-Level Depth)
Goal: Rebuild the docs_site (Astro + Starlight) to match FastAPI's documentation in depth, polish, navigation structure, and developer experience.
FastAPI docs analyzed: https://fastapi.tiangolo.com/ β 7 top-level nav sections, ~140+ pages, auto-generated API reference, tutorial-first learning path, multilingual support, sponsor integration.
Current JustAPI docs_site: ~20 pages across getting-started, tutorials, API reference, advanced, deployment, security, observability, contributing, inference, and reference sections. Content exists but lacks tutorial depth, API reference auto-generation, and structured learning path.
0. FastAPI Docs Analysis β What Makes It Great
0.1 Navigation Architecture (Top-Level)
| FastAPI Nav Item | Pages | Purpose |
|---|---|---|
| Home | 1 | Hero, sponsors, testimonials, quick-start, performance, dependencies |
| Features | 1 | Bullet-point feature showcase |
| Learn | ~76 | Main learning path β Python types intro, async intro, tutorial (35p), advanced guide (30p), CLI, editor support, deployment (8p), how-to recipes (11p) |
| Reference | ~21 | Auto-generated API reference β every class, function, parameter documented with signatures and examples |
| Resources | 7 | People, help, contributing, translations, project template, external links, newsletter |
| About | 4 | Alternatives/comparisons, history/design, benchmarks, repo management |
| Release Notes | 1 | Version changelog |
0.2 Key Design Patterns
Tutorial-first learning path. The
Learnsection is a structured course that builds from zero to advanced. Each page has:- Complete, runnable code example at the top
- Step-by-step explanation
- "Tip", "Note", "Info" callout boxes
- Screenshots of Swagger UI / ReDoc
- "Recap" section
- Previous/Next page navigation
- "On this page" right sidebar with section anchors
- Breadcrumb navigation
Python version tabs. Code blocks are shown with Python 3.10+ by default, with tabs for older versions.
Auto-generated API Reference. The
/reference/section is generated from docstrings β every parameter, return type, and method has a documented signature with examples.Sponsor integration. Banner sponsors appear at the top of every page; sidebar sponsors on the home page.
Translation support. 12 languages with automatic language switcher in the top bar.
"How To" recipes section. 11 standalone recipes for specific tasks (GraphQL, custom middleware, database testing, etc.)
Deployment depth. 8 pages covering HTTPS, manual, cloud providers, Docker, server workers, concepts.
0.3 Page Count Breakdown
| Section | Subsection | Pages |
|---|---|---|
| Learn | Python Types Intro, Async/Await | 2 |
| Learn | Tutorial - User Guide | 35 (5 deps sub + 4 security sub) |
| Learn | Advanced User Guide | 30 (2 security sub) |
| Learn | FastAPI CLI | 1 |
| Learn | Editor Support | 1 |
| Learn | Deployment | 8 |
| Learn | How-To Recipes | 11 |
| Reference | API Reference | 21 (2 OpenAPI sub) |
| Resources | People, Help, Contributing, etc. | 7 |
| About | Alternatives, History, Benchmarks, Management | 4 |
| Total | ~140+ pages |
1. JustAPI Current State Audit
1.1 Existing Docs Inventory
| Section | Existing Pages | Status |
|---|---|---|
| Getting Started | overview, installation, first-steps, cli-scaffolder, migrating-from-fastapi | 5 pages exist, need enhancement |
| Tutorials | hello-world, path-query-params, request-body, dependency-injection, middleware, error-handling, file-uploads, background-tasks, websockets-sse, routing-subrouters, database-integration | 11 pages exist |
| API Reference | index, justapiapp, routing, apirouter, request, responses, dependency-injection, exceptions, schema-validation, websockets, background-tasks, scheduler, session, plugins, testing-client, uploadfile, database | 17 pages exist |
| Advanced | native-fast-path, pyo3-ffi-safety, rust-core-deep-dive, zero-gil-architecture, streaming-output, agent-system, multi-protocol-apis, performance-tuning, resilience-patterns | 9 pages exist |
| Deployment | production-checklist, docker, kubernetes-helm, cloudflare-pages, railway, flyio, aks, eks, gke | 9 pages exist |
| Security | secure-configuration, penetration-testing, owasp-compliance, policy | 4 pages exist |
| Observability | opentelemetry, health-checks, metrics-monitoring, structured-logging | 4 pages exist |
| Contributing | development-setup, coding-standards, testing-guide, benchmarking-guide, documentation-guide | 5 pages exist |
| Inference | overview, gpu-cuda-setup, llm-serving-api, scheduling-batching | 4 pages exist |
| Reference | cli, configuration, error-codes, adr-index, glossary, release-notes | 6 pages exist |
| Examples | index | 1 page exists |
| Total | ~75 pages |
1.2 Gaps vs FastAPI
| What FastAPI has | JustAPI status | Action |
|---|---|---|
| Tutorial with 35 progressive lessons | 11 tutorials, not fully progressive | Expand to 35+ tutorial pages |
| Advanced User Guide with 30 pages | 9 advanced pages | Add 21 advanced topics |
| How-To Recipes (11 pages) | 0 | Create new section |
| Auto-generated API Reference | 17 hand-written pages | Switch to docstring-generated |
| Python version tabs in code | Not supported | Add Starlight tab component |
| Multilingual support (12 langs) | Not supported | Add i18n routing |
| Sponsor banners on every page | Not supported | Add sponsor integration |
| "On this page" TOC with anchors | Starlight built-in | Already works |
| Breadcrumb navigation | Starlight built-in | Already works |
| Previous/Next page links | Starlight built-in | Already works |
| Search (Pagefind) | Starlight built-in | Already works |
| Screenshots in tutorials | 0 screenshots | Add screenshots |
| "Tip/Note/Warning" callout boxes | Starlight has :::tip etc. |
Use consistently |
| Recap section in tutorials | Not used | Add to every tutorial |
| Editor support page | 0 | Create |
| FastAPI CLI reference | Has CLI reference | Enhance |
| Deployment cloud providers in docs | 9 deployment pages | Enhance |
| External links/resources page | 0 | Create |
| Project generation template page | 0 | Create |
| History, design and future | 0 | Create (DECISIONS.md) |
| Performance benchmarks page | BENCHMARKS.md exists | Port to docs site |
| Release notes changelog | release-notes.md exists | Enhance |
2. Rebuild Plan β Phases
Phase 1: Information Architecture & Navigation Overhaul
Goal: Restructure sidebar to match FastAPI's learning-path-first approach.
1.1 New Sidebar Structure
Getting Started (5 pages)
βββ Overview & Philosophy
βββ Installation
βββ First Steps
βββ CLI Project Scaffolder
βββ Migrating from FastAPI
Tutorial β User Guide (35+ pages, progressive)
βββ Python Types Intro (NEW)
βββ Async / Await (NEW)
βββ First Steps (existing, enhance)
βββ Path Parameters (existing, enhance)
βββ Query Parameters (existing, enhance)
βββ Request Body (Pydantic) (existing, enhance)
βββ Query Parameters & String Validations (NEW)
βββ Path Parameters & Numeric Validations (NEW)
βββ Query Parameter Models (NEW)
βββ Body β Multiple Parameters (NEW)
βββ Body β Fields (NEW)
βββ Body β Nested Models (NEW)
βββ Declare Request Example Data (NEW)
βββ Extra Data Types (NEW)
βββ Cookie Parameters (NEW)
βββ Header Parameters (NEW)
βββ Cookie Parameter Models (NEW)
βββ Header Parameter Models (NEW)
βββ Response Model β Return Type (NEW)
βββ Extra Models (NEW)
βββ Response Status Code (NEW)
βββ Form Data (NEW)
βββ Form Models (NEW)
βββ Request Files (NEW)
βββ Request Forms & Files (NEW)
βββ Handling Errors (existing, enhance)
βββ Path Operation Configuration (NEW)
βββ JSON Compatible Encoder (NEW)
βββ Body β Updates (NEW)
βββ Dependencies (existing, expand)
β βββ Classes as Dependencies (NEW)
β βββ Sub-dependencies (NEW)
β βββ Dependencies in Path Ops (NEW)
β βββ Global Dependencies (NEW)
β βββ Dependencies with yield (NEW)
βββ Security (expand)
β βββ Security First Steps (NEW)
β βββ Get Current User (NEW)
β βββ Simple OAuth2 (NEW)
β βββ OAuth2 + JWT Tokens (NEW)
βββ Middleware (existing, enhance)
βββ CORS (existing)
βββ SQL Databases (existing)
βββ Bigger Applications β Multiple Files (existing)
βββ Background Tasks (existing, enhance)
βββ Metadata & Docs URLs (NEW)
βββ Frontend (NEW)
βββ Static Files (NEW)
βββ Testing (existing, enhance)
βββ Debugging (NEW)
Advanced User Guide (30 pages)
βββ Native Fast Path (existing, enhance)
βββ Zero-GIL Architecture (existing, enhance)
βββ Rust Core Deep Dive (existing, enhance)
βββ PyO3 FFI Safety (existing, enhance)
βββ Streaming Output (existing, enhance)
βββ Agent System (existing, enhance)
βββ Multi-Protocol APIs (existing, enhance)
βββ Performance Tuning (existing, enhance)
βββ Resilience Patterns (existing, enhance)
βββ Path Operation Advanced Configuration (NEW)
βββ Additional Status Codes (NEW)
βββ Return a Response Directly (NEW)
βββ Custom Response β HTML, Stream, File (NEW)
βββ Additional Responses in OpenAPI (NEW)
βββ Response Cookies (NEW)
βββ Response Headers (NEW)
βββ Response β Change Status Code (NEW)
βββ Advanced Dependencies (NEW)
βββ Advanced Security (NEW)
β βββ OAuth2 Scopes (NEW)
β βββ HTTP Basic Auth (NEW)
βββ Using the Request Directly (NEW)
βββ Using Dataclasses (NEW)
βββ Advanced Middleware (NEW)
βββ Sub Applications β Mounts (NEW)
βββ Behind a Proxy (NEW)
βββ Templates (Jinja2) (NEW)
βββ WebSockets (existing, enhance)
βββ Lifespan Events (NEW)
βββ Testing WebSockets (NEW)
βββ Testing Events (NEW)
βββ Testing Dependencies with Overrides (NEW)
βββ Async Tests (NEW)
βββ Settings & Environment Variables (NEW)
βββ OpenAPI Callbacks (NEW)
βββ OpenAPI Webhooks (NEW)
βββ Including WSGI β Flask, Django (NEW)
βββ Generating SDKs (NEW)
βββ Strict Content-Type Checking (NEW)
How-To Recipes (15 pages, NEW section)
βββ General Recipes (NEW)
βββ Migrate from Pydantic v1 (NEW)
βββ GraphQL Integration (NEW)
βββ Custom Request & Route Classes (NEW)
βββ Conditional OpenAPI (NEW)
βββ Extending OpenAPI (NEW)
βββ Separate Input/Output Schemas (NEW)
βββ Custom Docs UI Assets (NEW)
βββ Configure Swagger UI (NEW)
βββ Testing a Database (NEW)
βββ Custom Error Status Codes (NEW)
βββ gRPC Advanced Patterns (NEW)
βββ WASM Middleware Plugins (NEW)
βββ Circuit Breaker Recipes (NEW)
βββ Background Task Patterns (NEW)
API Reference (20+ pages, auto-generated)
βββ JustAPIApp β Constructor & Methods (enhance)
βββ Request Parameters (Path, Query, Header, Cookie) (enhance)
βββ Status Codes (enhance)
βββ UploadFile (enhance)
βββ Exceptions β HTTPException (enhance)
βββ Dependencies β Depends() (enhance)
βββ APIRouter (enhance)
βββ BackgroundTasks (enhance)
βββ Request (enhance)
βββ WebSockets (enhance)
βββ Response (enhance)
βββ Custom Response Classes (enhance)
βββ Middleware (enhance)
βββ OpenAPI β Docs & Models (enhance)
βββ Security Tools (enhance)
βββ Encoders (enhance)
βββ Static Files (enhance)
βββ Templating β Jinja2Templates (enhance)
βββ TestClient (enhance)
βββ Schema β Validator & Fields (enhance)
βββ Plugin System β Lifecycle Hooks (enhance)
Deployment (10 pages, enhance existing)
βββ Production Checklist (enhance)
βββ About HTTPS (NEW)
βββ Run a Server Manually (NEW)
βββ Deployment Concepts (NEW)
βββ Docker (enhance)
βββ Kubernetes / Helm (enhance)
βββ Server Workers β Workers & Concurrency (NEW)
βββ Google Cloud (GKE) (enhance)
βββ Amazon (EKS) (enhance)
βββ Azure (AKS) (enhance)
βββ Fly.io (enhance)
βββ Railway (enhance)
βββ Cloudflare Pages (enhance)
Security (5 pages)
βββ Security Policy (enhance)
βββ OWASP Compliance (enhance)
βββ Penetration Testing (enhance)
βββ Secure Configuration (enhance)
βββ Authentication & Authorization Guide (NEW)
Observability (5 pages)
βββ OpenTelemetry Tracing (enhance)
βββ Prometheus Metrics (enhance)
βββ Structured Logging (enhance)
βββ Health Checks (enhance)
βββ Alerting & Incident Response (NEW)
Contributing (6 pages)
βββ Development Setup (enhance)
βββ Coding Standards (enhance)
βββ Testing Guide (enhance)
βββ Benchmarking Guide (enhance)
βββ Documentation Guide (enhance)
βββ Release Process (NEW)
Inference / AI (6 pages, existing)
βββ Overview (enhance)
βββ GPU / CUDA Setup (enhance)
βββ LLM Serving API (enhance)
βββ Scheduling & Batching (enhance)
βββ Quantization & LoRA (NEW)
βββ OpenAI-Compatible API (NEW)
Reference (8 pages)
βββ CLI Reference (enhance)
βββ Configuration Reference (enhance)
βββ Error Codes (enhance)
βββ ADR Index (enhance)
βββ Glossary (enhance)
βββ Release Notes (enhance)
βββ Changelog (NEW)
βββ Benchmarks (NEW, port from BENCHMARKS.md)
Resources (4 pages, NEW section)
βββ Help & Support (NEW)
βββ External Links & Ecosystem (NEW)
βββ Full Stack Project Template (NEW)
βββ Newsletter / Community (NEW)
About (4 pages, NEW section)
βββ Alternatives, Inspiration & Comparisons (NEW)
βββ History, Design & Future (NEW)
βββ Benchmarks & Performance (NEW)
βββ Repository Management (NEW)
βββ License (NEW)
Total planned pages: ~180+ (vs ~75 current, vs ~140 FastAPI)
Phase 2: Tutorial Deep-Dive β Expand to 35+ Progressive Pages
Pattern for each tutorial page (mirror FastAPI):
---
title: <Topic>
description: <SEO description>
keywords: [<tags>]
---
# <Title>
<2-3 sentence introduction>
<Complete, runnable code example at top>
## <Step 1>
<Explanation with code snippets>
:::tip
<Tip callout>
:::
:::note
<Note callout>
:::
## <Step N>
<Screenshots of Swagger UI / ReDoc where applicable>
## Recap
<Summary of what was learned>
## See Also
- [Next Topic](/tutorial/next-topic/)
- [Related API Reference](/reference/related/)
2.1 New Tutorials to Write (24 missing)
These are the tutorials FastAPI has that JustAPI doesn't:
- Python Types Intro β
str,int,float,bool,list,dict,Optional,Union,Literal,TypedDict,dataclass. How JustAPI uses type hints. - Async / Await β When to use
async defvsdef, concurrency model, GIL implications. - Query Parameters & String Validations β
Query()withmin_length,max_length,pattern,deprecated. - Path Parameters & Numeric Validations β
Path()withge,le,gt,lt. - Query Parameter Models β Using Pydantic models for query params.
- Body β Multiple Parameters β Mixing path, query, body, singular body values.
- Body β Fields β
Field()for Pydantic model fields. - Body β Nested Models β Sub-models, deeply nested JSON.
- Declare Request Example Data β
example,examplesin schema. - Extra Data Types β
UUID,datetime,date,bytes,Decimal,Base64. - Cookie Parameters β Reading cookies.
- Header Parameters β Reading headers.
- Cookie Parameter Models β Pydantic models for cookies.
- Header Parameter Models β Pydantic models for headers.
- Response Model β Return Type β
response_model, filtering fields. - Extra Models β Multiple related models, inheritance.
- Response Status Code β Setting custom status codes.
- Form Data β
Form()for non-JSON forms. - Form Models β Pydantic models for forms.
- Request Files β
File()andUploadFile. - Request Forms & Files β Combining forms and files.
- Path Operation Configuration β
tags,summary,description,response_description,deprecated,include_in_schema. - JSON Compatible Encoder β
jsonable_encoder. - Body β Updates β PATCH vs PUT, partial updates.
2.2 Tutorials to Expand (11 existing)
- Hello World β Add Python version tabs, run with
uvnot justpython main.py, addcurltesting examples, add OpenAPI docs section. - Path & Query Parameters β Split into path params and query params separate pages. Add validation sections.
- Request Body β Add nested models section, example data, Field usage.
- Dependency Injection β Add sub-dependencies, classes as deps, global deps, yield deps.
- Middleware β Add ASGI middleware, custom middleware, third-party middleware.
- Error Handling β Add custom exception handlers, override default handlers.
- File Uploads β Add form models, multiple file uploads.
- Background Tasks β Add task dependencies, error handling.
- WebSockets & SSE β Split into separate pages. Add testing WebSockets section.
- Routing & Subrouters β Add path operation configuration, metadata.
- Database Integration β Add async SQL, migrations, testing.
Phase 3: Advanced User Guide β Expand to 30+ Pages
3.1 Existing to Enhance (9 pages)
- Native Fast Path β Add performance comparison graphs, when to use
native=Truevs when not to. - Zero-GIL Architecture β Update with free-threaded Python 3.13t/3.14t section.
- Rust Core Deep Dive β Add codebase navigation guide, key structs and traits.
- PyO3 FFI Safety β Update with latest PyO3 patterns,
BoundAPI. - Streaming Output β Add
@app.stream_json, async generator patterns. - Agent System β Add MCP tool exposition guide, session management.
- Multi-Protocol APIs β Add JSON-RPC and gRPC examples side-by-side.
- Performance Tuning β Add worker config, connection pooling,
justapi.confreference. - Resilience Patterns β Add circuit breaker configuration, bulkhead, retry policies.
3.2 New Advanced Pages to Write (21 pages)
- Path Operation Advanced Configuration β
openapi_extra,response_model_exclude_unset, etc. - Additional Status Codes β Returning custom status codes alongside 200.
- Return a Response Directly β
Response,JSONResponse,HTMLResponse. - Custom Response β HTML, Stream, File β
StreamingResponse,FileResponse,RedirectResponse. - Additional Responses in OpenAPI β Documenting error responses, multiple response schemas.
- Response Cookies β Setting and deleting cookies in responses.
- Response Headers β Custom response headers.
- Response β Change Status Code β Default status code override.
- Advanced Dependencies β Parameterized dependencies, async generator deps.
- Advanced Security β OAuth2 scopes, HTTP Basic Auth, API keys.
- Using the Request Directly β Accessing raw request body, headers.
- Using Dataclasses β Python dataclasses as request models.
- Advanced Middleware β BaseHTTPMiddleware, ASGI middleware, third-party middleware integration.
- Sub Applications β Mounts β Mounting sub-applications at sub-paths.
- Behind a Proxy β
root_path,X-Forwarded-*headers, reverse proxy config. - Templates (Jinja2) β Server-side rendering with Jinja2.
- WebSockets Advanced β WebSocket connection management, broadcasting.
- Lifespan Events β
startup/shutdown, lifespan context manager. - Testing WebSockets β
TestClientWebSocket testing. - Testing Events β Testing lifespan events.
- Testing Dependencies with Overrides β
app.dependency_overrides, test dependency injection. - Async Tests β
asynctest functions,httpx.AsyncClient. - Settings & Environment Variables β Pydantic Settings,
.envfiles. - OpenAPI Callbacks β Webhook request schemas in OpenAPI.
- OpenAPI Webhooks β Outbound webhook definitions.
- Including WSGI β Flask, Django β Mounting WSGI apps.
- Generating SDKs β OpenAPI-based client generation (
openapi-generator). - Strict Content-Type Checking β CSRF prevention, Content-Type enforcement.
Phase 4: How-To Recipes (15 pages, NEW)
A standalone section for specific, task-oriented recipes:
- General How-To β Common patterns and workarounds.
- Migrate from Pydantic v1 β
Fieldchanges,model_dump()vsdict(), validators. - GraphQL Integration β Setting up Strawberry GraphQL alongside REST.
- Custom Request & Route Classes β Extending
RequestandAPIRoute. - Conditional OpenAPI β Disabling OpenAPI in production.
- Extending OpenAPI β Adding custom OpenAPI fields.
- Separate Input/Output Schemas β Benefits and configuration.
- Custom Docs UI Assets β Self-hosting Swagger UI / ReDoc.
- Configure Swagger UI β
swagger_ui_parameters, themes, syntax highlighting. - Testing a Database β In-memory SQLite for tests, transaction rollback.
- Custom Error Status Codes β 403 β 401 migration patterns.
- gRPC Advanced Patterns β Streaming RPCs, interceptors, auth.
- WASM Middleware Plugins β Writing and deploying wasmtime plugins.
- Circuit Breaker Recipes β Configuring resilience patterns for specific scenarios.
- Background Task Patterns β Prioritized tasks, task cancellation, progress reporting.
Phase 5: API Reference β Auto-Generated from Docstrings
Current state: 17 hand-written markdown pages.
Target: Auto-generated API reference from Python docstrings + Rust docstrings.
5.1 Tools & Implementation
- Use
pydoc-style generation or a Starlight plugin that parses Python stubs - Generate from actual
.pyitype stubs incrates/justapi-py/python/justapi/ - Document every public class, method, function, and parameter
- Each reference page includes:
- Signature with type annotations
- Description from docstring
- Parameter table (name, type, default, description)
- Example usage
- See also links
5.2 Reference Pages to Create/Enhance
| # | Page | Source | Priority |
|---|---|---|---|
| 1 | JustAPIApp | justapi/__init__.py β FastAPI docstring style |
P0 |
| 2 | Routing (@app.get/post/etc) |
Route decorators | P0 |
| 3 | APIRouter | justapi/routing.py |
P0 |
| 4 | Request | Request object properties & methods | P0 |
| 5 | Response | Response, JSONResponse, StreamingResponse | P0 |
| 6 | Dependencies | Depends(), Path(), Query(), Header(), Cookie() |
P0 |
| 7 | Exceptions | HTTPException, RequestValidationError |
P0 |
| 8 | WebSockets | WebSocket handler, WebSocket class |
P0 |
| 9 | Background Tasks | BackgroundTasks, add_task |
P0 |
| 10 | Schema & Validation | Schema, Field, body_schema |
P0 |
| 11 | UploadFile | UploadFile properties & methods |
P0 |
| 12 | Testing Client | JustAPITestClient, get/post/etc |
P0 |
| 13 | Middleware | add_middleware, built-in middleware classes |
P1 |
| 14 | Security Tools | JWT, OAuth2 utilities | P1 |
| 15 | OpenAPI | Docs UI configuration, openapi.json |
P1 |
| 16 | Static Files | Mount static files |
P1 |
| 17 | Templating | Jinja2Templates | P1 |
| 18 | Scheduler | PyScheduler, cron/interval/once |
P1 |
| 19 | Plugins | Plugin lifecycle hooks | P1 |
| 20 | Session | Session properties, agent state | P1 |
| 21 | Status Codes | status module reference |
P2 |
Phase 6: Deployment β Expand to 12 Pages
Current: 9 deployment pages.
Enhancements:
- Production Checklist β Add Redis config, database pooling, logging levels, monitoring setup.
- About HTTPS β NEW. TLS termination, certbot, rustls, Let's Encrypt.
- Run a Server Manually β NEW.
justapi serveflags,--workers,--port,--host. - Deployment Concepts β NEW. Concurrency, workers, auto-scaling, resource limits.
- Docker β Add
docker-composeexamples with Redis, PostgreSQL, Prometheus. - Kubernetes / Helm β Add auto-scaling config, ingress examples, resource requests/limits.
- Server Workers β NEW. Uvicorn workers vs JustAPI workers, Gunicorn integration.
- Cloud deployment guides β Port from
deploy/to docs_site with screenshots and CLI steps.
Phase 7: Security & Observability β Expand and Polish
Security (5 pages):
- Add new Authentication & Authorization Guide β OAuth2 flows, JWT, API keys, RBAC.
- Enhance existing pages with screenshots, config examples, and troubleshooting.
Observability (5 pages):
- Add new Alerting & Incident Response β Prometheus AlertManager, PagerDuty integration, SLIs/SLOs.
- Enhance existing with Grafana dashboard JSON examples.
Phase 8: Inference / AI Section (6 pages)
Current: 4 pages.
Add:
- Quantization & LoRA β Model quantization, LoRA adapter serving.
- OpenAI-Compatible API β
/v1/chat/completionsendpoint, token streaming, function calling.
Phase 9: Resources, About, and Polish Sections
Resources (NEW β 4 pages):
- Help & Support β GitHub Issues, Discord, Stack Overflow, FAQ.
- External Links & Ecosystem β Related projects, plugins, community tools.
- Full Stack Project Template β Guide to using the
justapi createfull-stack template. - Newsletter / Community β RSS feed, mailing list, social links.
About (NEW β 5 pages):
- Alternatives, Inspiration & Comparisons β Port and expand from README competitors section.
- History, Design & Future β Why Rust, design decisions (port from DECISIONS.md).
- Benchmarks & Performance β Port from BENCHMARKS.md into searchable, navigable format.
- Repository Management β Maintainers, governance, release process.
- License β MIT License text.
Phase 10: Infrastructure & CI
10.1 Auto-Generation Pipeline
- Create a script (
scripts/gen_api_ref.py) that parsescrates/justapi-py/python/justapi/.pyistubs and generates Starlight markdown pages indocs_site/src/content/docs/reference/ - Run this script as part of the docs build (
astro build)
10.2 Deployment
- Cloudflare Pages (current target) β already configured
- Add PR preview deployments for docs changes
- Add link checker in CI for docs builds
- Add spell checker (
cspell) for documentation
10.3 CI Integration
- Add docs build to
wheels.yml(or a separatedocs.yml) - Fail build on broken links
- Auto-deploy on merge to
main/master
10.4 SEO & Performance
- Sitemap generation (
@astrojs/sitemap) - OpenGraph + Twitter Card meta tags on every page
- Canonical URLs
- Pagefind full-text search
- RSS feed for release notes (
@astrojs/rss) - Lighthouse target: 100/100
3. Page Templates
3.1 Tutorial Page Template
---
title: <Topic Title>
description: <2-line SEO description>
keywords: [JustAPI, <topic>, Python web framework, FastAPI alternative]
---
# <Topic Title>
<2-3 sentence introduction explaining what this page covers and why it matters.
## <First Concept>
<Clear explanation with code snippet>
```python
# Example code
:::tip
:::

Recap
See Also
### 3.2 Reference Page Template
```markdown
---
title: <Class/Function Name>
description: API reference for <class/function>
keywords: [JustAPI, <class/function>, API reference]
---
# `<Class/Function Name>`
<Description of what this does>
## Signature
```python
<def signature with types>
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
<name> |
<type> |
<default> |
Example
<runnable example>
See Also
---
## 4. Implementation Order
| Phase | Priority | Pages | Effort | Depends On |
|---|---|---|---|---|
| Phase 1: IA & Nav | P0 | Sidebar config | 1 day | Nothing |
| Phase 2: Tutorial Expansion | P0 | +24 new tutorials, 11 enhanced | 3 weeks | Phase 1 |
| Phase 3: Advanced Guide | P1 | +21 new, 9 enhanced | 2 weeks | Phase 1 |
| Phase 5: API Reference | P0 | 21 pages auto-generated | 1 week | Phase 1 |
| Phase 4: How-To Recipes | P1 | 15 new pages | 1 week | Phase 1 |
| Phase 6: Deployment | P1 | +3 new, 9 enhanced | 3 days | Phase 1 |
| Phase 7: Security & O11y | P2 | +2 new, 8 enhanced | 2 days | Phase 1 |
| Phase 8: Inference | P2 | +2 new, 4 enhanced | 2 days | Phase 1 |
| Phase 9: Resources & About | P2 | 9 new pages | 2 days | Phase 1 |
| Phase 10: Infrastructure | P2 | CI, auto-gen, SEO | 3 days | Phase 5 |
**Total estimated effort: ~8-10 weeks for a single contributor.**
---
## 5. Success Criteria
- [ ] Sidebar structure mirrors FastAPI β learning-path-first with progressive tutorials
- [ ] Tutorial β User Guide has 35+ progressive lessons with code, screenshots, and recaps
- [ ] Advanced User Guide has 30+ pages covering every framework feature
- [ ] API Reference auto-generated from `.pyi` stubs with full parameter docs
- [ ] How-To Recipes has 15 standalone task guides
- [ ] Deployment covers all 5 cloud providers with screenshots
- [ ] Security & Observability include configuration examples and dashboard JSON
- [ ] Resources, About, and Reference sections complete the 180-page target
- [ ] All pages have SEO meta tags, OpenGraph, and breadcrumbs
- [ ] docs build passes CI with no broken links
- [ ] Lighthouse 100/100 on all categories
- [ ] Search (Pagefind) indexes all content with section-level granularity