Files
supabase/apps/docs
Palash AwasthiandNik Richers 165582b08e docs: add Reflex framework quickstart (#45441)
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.

YES

## What kind of change does this PR introduce?

Docs update — adds a new framework quickstart.

## What is the current behavior?

The Framework Quickstarts section under Getting Started covers Next.js,
Nuxt, React, Flask, and others, but doesn't include Reflex
(https://reflex.dev), an open-source Python web framework that compiles
to React. Python developers building full-stack apps with Reflex have to
piece together the Supabase setup from the general Python reference
rather than following a quickstart.

## What is the new behavior?

Adds a Reflex framework quickstart at
`apps/docs/content/guides/getting-started/quickstarts/reflex.mdx`,
mirroring the structure of the existing Flask quickstart: same DB setup
partial (`quickstart_db_setup.mdx`), same env var step using
`ProjectConfigVariables`, same six-step `StepHikeCompact` shape. A nav
entry is added directly after Flask in `NavigationMenu.constants.ts`,
gated on `!jsOnly` to match Flask's pattern.

Verified end-to-end against a fresh Supabase project: ran every command
in the docs literally, including the full SQL from
`quickstart_db_setup.mdx` (with the `grant select on public.instruments
to anon` line). The rendered Reflex app shows the Instruments heading
with all three seeded rows. No console errors, no event-loop warnings.

## Additional context

Conventions used in the quickstart:

- Uses `uv` (`uv init`, `uv add`, `uv run`) rather than pip + venv. This
follows the broader docs pattern of each quickstart using its
framework's idiomatic tooling (Next.js → npx, RedwoodJS → yarn, Laravel
→ composer, Flutter → pubspec.yaml). It also matches what Reflex's own
`reflex init` post-install message recommends. `uv add` produces a
`pyproject.toml` and `uv.lock` so users can rebuild deterministically
with `uv sync`.
- The Supabase client is constructed via `acreate_client` with a
lazy-init pattern, and the event handler is `async def`. This avoids
blocking Reflex's event loop on the HTTP request.

In touch with the Supabase team on this — happy to iterate on copy or
scope based on review.

Pre-flight: ran pnpm run format locally, which passed cleanly. Did not
run pnpm run build locally — hit a Windows/CRLF-related TOML parsing
failure in an unrelated troubleshooting frontmatter file
(apps/docs/content/troubleshooting/all-about-supabase-egress-a_Sg_e.mdx)
during page data collection. Relying on Vercel preview to validate the
build.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
  * Added Reflex (Python) and Spring Boot to the framework quickstarts.
* Reorganized quickstart listings for clearer framework navigation and
grouping.

* **Documentation**
* Added a Reflex quickstart guide covering Supabase setup, environment
variables, asynchronous data loading, error handling, and running the
app.
  * Added Reflex-specific AI guidance for configuring Supabase projects.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Nik Richers <nik@validmind.ai>
2026-09-09 23:35:24 +00:00
..
2026-07-01 12:59:00 +02:00

Reference Docs

Supabase Reference Docs

Maintainers

If you are a maintainer of any tools in the Supabase ecosystem, you can use this site to provide documentation for the tools & libraries that you maintain.

DocSpec

We use documentation specifications which can be used to generate human-readable docs.

  • OpenAPI: for documenting API endpoints.
  • SDKSpec (custom to Supabase): for SDKs and client libraries.
  • ConfigSpec (custom to Supabase): for configuration options.
  • CLISpec (custom to Supabase): for CLI commands and usage.

The benefit of using custom specifications is that we can generate many other types from a strict schema (eg, HTML and manpages). It also means that we can switch to any documentation system we want. On this site we use Next.js, but on Supabase's official website, we use a custom React site and expose only a subset of the available API for each tool.

Contributing

To contribute to docs, see the developers' guide and contributing guide.