swadhinbiswas docs: uv/uvx integration + heavy SEO (JSON-LD, keywords, FastAPI search visibility) · 7/24/2026
2550664
66 lines · 2.5 KB
Raw Download

title: ADR Index
description: Architecture Decision Records — key decisions that shaped JustAPI, a high-performance FastAPI alternative built in Rust.
keywords: architecture decision records, ADR, FastAPI alternative, Rust web framework, technical decisions

JustAPI documents significant architectural decisions as Architecture Decision Records (ADRs) in DECISIONS.md.

Architecture & Design

ADR Title Key Point
001 Crate defaults for v1.0 Workspace structure and crate responsibilities
005 Rust edition: 2021 Deliberately stayed on 2021 edition
008 GIL strategy Dedicated Python worker thread (later superseded)
014 Project rename: Hyperion → JustAPI Rebranding rationale
021 GIL-free architecture Removed dedicated Python worker thread

Performance

ADR Title Key Point
006 Benchmark tooling: oha over wrk Chose oha for consistency
020 Performance target Beat FastAPI on every benchmark
024 Bucket-based latency histograms Custom over HDR Histogram
047 Remove per-request Python↔Rust boundary Native fast path
056 Rust-native route compiler Skip GIL on common routes
064 Route-lookup cache Memoization for repeated lookups

Security

ADR Title Key Point
018 Security strategy SAST in CI, fuzzing, OWASP baseline
050 Secure-by-default CORS Opt-in security headers
052 Single error-response contract {"detail": ...} format
053 Panic model: abort + supervisor Not catch_unwind
055 Configurable max body size 413 on overflow

Database

ADR Title Key Point
016 Database strategy sqlx with compile-time checks
058 Eager/early DB pool connect Removes app.db is None footgun
069 Fix DB-backed handler deadlock WAL hang fix
074 DB-startup + response-correctness Fixed normalize_db_url

Inference

ADR Title Key Point
030 Native inference engine Candle, not torch delegation
036 Disaggregated prefill/decode Separate prefill and decode resources
068 Freeze AI/inference work Until 2.0.8 release

Full List

All 75+ ADRs are documented in DECISIONS.md at the repository root.

See Also