46 Commits

Author SHA1 Message Date
kennethreitz f4a292108b Move version below tagline in docs sidebar
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 15:34:49 -04:00
kennethreitz 25ea333ad4 Prefix version with v in docs sidebar
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 15:33:12 -04:00
kennethreitz 6279835040 Show version number in docs sidebar
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 15:32:48 -04:00
kennethreitz 1bfd85b003 Add Pydantic support for OpenAPI schema generation
Define your API schemas with Pydantic models instead of (or alongside)
YAML docstrings and marshmallow:

    from pydantic import BaseModel

    class PetIn(BaseModel):
        name: str
        age: int = 0

    class PetOut(BaseModel):
        id: int
        name: str
        age: int

    @api.route("/pets", methods=["POST"],
               request_model=PetIn, response_model=PetOut)
    async def create_pet(req, resp):
        data = await req.media()
        resp.media = {"id": 1, **data}

Also works with @api.schema("Name") decorator for registering
standalone schema components.

Pydantic models, marshmallow schemas, and YAML docstrings can all
be used together in the same API.

Also: rewrite docs with more prose, restore sidebar logo and links,
add FastAPI acknowledgment, update homepage copy.

161 tests, 95% coverage.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 12:35:07 -04:00
kennethreitz 33ebc77f10 Rewrite docs from scratch, remove 14MB of bundled fonts
Complete documentation rewrite:
- Clean, code-first index page (no badges, no testimonials)
- Rewritten quickstart: request/response reference, templates, background tasks
- Rewritten feature tour: method filtering, lifespan, file serving,
  error handling, hooks, WebSockets, GraphQL, OpenAPI, CORS, sessions
- Simplified testing and deployment guides
- Stripped conf.py to essential extensions only

Removed cruft:
- 14MB of paid font files (Mercury, Operator Mono)
- Google Analytics (deprecated Universal Analytics)
- UserVoice widget
- Konami code easter egg
- Algolia DocSearch (not configured)
- Twitter widgets
- Unused Sphinx extensions (mathjax, ifconfig, coverage, doctest, opengraph)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 12:17:22 -04:00
Andreas Motl 98ca45003b Documentation: Badges, linking, wording, inline comments. This and that.
A few of the adjustments here have been required to mitigate Sphinx
warnings, which would converge to errors on CI, thus failing the build.

A few other changes, both wording and syntax/formatting fixes, are
coming from regular copyediting and documentation maintenance.
2024-10-27 18:13:13 +01:00
taoufik07 a57570210a Add prettier to pre-commit 2020-12-01 23:36:42 +01:00
s-pace 4957793c80 feat: add search to every documentation pages 2019-04-22 22:23:07 +02:00
s-pace ff7f4b502d feat: add search to the main introduction page 2019-04-22 22:22:46 +02:00
Cody Fuller 5599ec2809 Add monospace fallback for preformatted text 2018-11-20 09:37:30 -06:00
kennethreitz 09206ae1e4 .pre 2018-10-15 07:05:59 -04:00
kennethreitz 8f6387536c fix 2018-10-14 07:46:15 -04:00
kennethreitz c925b06114 margin-top 2018-10-14 07:43:01 -04:00
kennethreitz fe5d92674e google analytics 2018-10-13 07:53:13 -04:00
kennethreitz 3db1aad96a hacks 2018-10-12 08:26:20 -04:00
kennethreitz 6e9adac871 changes on the horizon 2018-10-12 07:19:29 -04:00
kennethreitz d47caebc97 space for methods 2018-10-12 06:56:43 -04:00
kennethreitz 224c2bbb2b yellow 2018-10-12 06:55:35 -04:00
kennethreitz 48f1a0545e frontend 2018-10-12 06:53:38 -04:00
kennethreitz 4bdd3f9138 lightgrey 2018-10-12 06:50:41 -04:00
kennethreitz 86bffbf62d italics 2018-10-12 06:49:53 -04:00
kennethreitz f7b0fb3f66 grey 2018-10-12 06:47:50 -04:00
kennethreitz 971be488d5 hacks 2018-10-12 06:47:16 -04:00
kennethreitz f415e9814c important 2018-10-12 06:44:47 -04:00
kennethreitz 01575a0b8d more colors 2018-10-12 06:43:31 -04:00
kennethreitz a77492dae1 changes 2018-10-12 06:42:39 -04:00
kennethreitz 080d6d30da color 2018-10-12 06:41:53 -04:00
kennethreitz ec9b20f87c class in yellow 2018-10-12 06:39:48 -04:00
kennethreitz 7aa405c87d lightgrey 2018-10-12 06:38:52 -04:00
kennethreitz af6257d364 cleanup 2018-10-12 06:37:06 -04:00
kennethreitz f930cbb2c9 grey 2018-10-12 06:35:52 -04:00
kennethreitz 6a5a22f035 hacks 2018-10-12 06:34:10 -04:00
kennethreitz 53f87e5def hacks 2018-10-12 06:33:28 -04:00
kennethreitz a00687cc0f hacks 2018-10-12 06:32:49 -04:00
kennethreitz d1d66c0e78 hacks 2018-10-12 06:31:53 -04:00
kennethreitz ee51f50809 fixes 2018-10-12 06:30:32 -04:00
kennethreitz b067da2a1c hacks 2018-10-12 06:27:43 -04:00
kennethreitz fabe7b9427 css 2018-10-12 05:32:22 -04:00
kennethreitz 0fc765a1fd .css 2018-10-11 22:22:41 -04:00
kennethreitz 6e7d97e5c0 hacks 2018-10-11 22:20:54 -04:00
kennethreitz e75f195f7c hacks 2018-10-11 22:10:06 -04:00
kennethreitz d3efa8b80d font haqcks 2018-10-11 22:08:56 -04:00
kennethreitz d8d1787e6f not all the time 2018-10-11 21:08:42 -04:00
kennethreitz 6fa5f9af0c typography 2018-10-11 16:41:46 -04:00
kennethreitz 6de212d4bc fix sidebars 2018-10-11 14:08:47 -04:00
kennethreitz 940ab9d762 better 2018-10-11 13:57:55 -04:00