Web apps in pure Python, Built in a few minutes!
Build anything, faster
Create your whole app in a single language. Don't worry about writing APIs to connect your frontend and backend
With Reflex you can build anything from internal tools and data apps to complex multi-page apps
The app state is just a class. State updates are methods in the class. And the UI is a reflection of the state
No more switching between languages and frameworks. Use one language for your whole stack
-
60+ built-in UI Components
Reflex comes with a large library of UI components ranging from simple buttons to complex graphs and tables.
-
Custom Components
Create your own components in a few lines of code. Simply wrap the React component of your choice.
-
Completely customizable
All Reflex components are fully customizable. Change the colors, fonts, and styles to match your project
-
Now everyone can work across the full-stack
With Reflex every engineer can work across the whole stack allowing for a more efficient and productive workflow
Reflex comes with a powerful backend built with FastAPI and SQLAlchemy
-
Batteries included
Skip the boilerplate and get started faster. Reflex integrates the frontend and backend so there is no need to write API endpoints
-
Seamlessly integrate with any Python library
Never get locked into a framework that doesn't support your existing tech stack
-
Built in database ORM
Integrate with existing databases with a single line of code. Or use our built in SQLite database
-
Custom build plan: nixpacks.toml
- Runs all the necessary commands to setup, initialize, export, and install Caddy
- Starts the Reflex backend and Caddy server using parallel to avoid having to run two separate services in the project
-
The Caddy Server/Proxy: Caddyfile
- Serves the exported frontend Reflex app
- Proxies all requests to
/backend/*
through to the Reflex backend server
-
The
api_url
variable: rxconfig.py- Makes sure the frontend build utilizes the correct backend api url
Relevant Caddy documentation: