Skip to content

docs: add Why fastapi-startkit page and sharpen home hero#62

Open
tmgbedu wants to merge 1 commit into
mainfrom
task/683-why-positioning
Open

docs: add Why fastapi-startkit page and sharpen home hero#62
tmgbedu wants to merge 1 commit into
mainfrom
task/683-why-positioning

Conversation

@tmgbedu

@tmgbedu tmgbedu commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Summary

Positions fastapi-startkit for newcomers landing on the docs.

Changes

  • index.md — rewrote the vague hero tagline ("The components needs to build a great Python application.") into a crisp batteries-included-for-FastAPI value prop, and added a secondary alt CTA linking to the new Why fastapi-startkit? page (primary CTA renamed to Get Started).
  • docs/why.md — new positioning page covering:
    • What FastAPI leaves to you (config, ORM, migrations, logging, CLI, storage/queues, bootstrapping)
    • The provider model, with a real bootstrap showing both a bare class (LogProvider) and a (Provider, Config) tuple ((FastAPIProvider, FastAPIConfig)), lifted from example/fastapi-app/bootstrap/application.py
    • The FastAPI-optional / headless angle (CLI, cron, workers)
    • The not-a-replacement framing
    • A Next → Getting Started pointer
  • .vitepress/config.mts — registered the page at the top of the Guide sidebar.

Verification

  • npm run docs:build completes cleanly (VitePress fails on dead links; the new /docs/why link and the /docs/getting-started#installation anchor both resolve).
  • vitepress dev serves /docs/why and / with HTTP 200.

Rewrite the home hero tagline into a batteries-included-for-FastAPI value
prop and add a secondary CTA to the new positioning page. Add docs/why.md
covering what FastAPI leaves to you, the provider model (bare class and
(Provider, Config) tuple), the FastAPI-optional/headless angle, and the
not-a-replacement framing. Register the page at the top of the Guide sidebar.

@tmgbedu tmgbedu left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ APPROVE (posted as comment — GitHub blocks self-approval on own PR)

Reviewed the full diff, verified the provider snippet against the source of truth, and ran a clean npm run docs:build. Everything checks out.

Verified

  • Hero tagline (index.md) — accurate batteries-included value prop; the listed concerns (ORM, migrations, config, logging, CLI, providers) all ship in the framework.
  • CTAsGet Started/docs/getting-started, Why fastapi-startkit?/docs/why; both render in built output.
  • Provider snippet (docs/why.md) — byte-for-byte matches example/fastapi-app/bootstrap/application.py: bare-class LogProvider + (FastAPIProvider, FastAPIConfig) tuple, correctly explained.
  • FastAPI-optional / headless angle — present and accurate.
  • Not-a-replacement framing — present; correctly notes app.fastapi is a real FastAPI app.
  • Next → Getting Started pointer — present.
  • Sidebar (.vitepress/config.mts) — registered at the top of the Guide group, above Getting Started.
  • Buildnpm run docs:build passes with no dead-link failures; #installation anchor resolves; /docs/why and / render correctly.

No blocking issues. Not merging per instructions.

(Nit, non-blocking: snippet comment uses two spaces before # vs one in source — cosmetic only.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant