skillfed

reflex

Web apps in pure Python.

reflex v0.9.8 417.5K downloads/30d#6,816 on PyPI28,814
Permissive license Apache-2.0 Active released

What it is and what it does

Reflex is a full-stack web framework that lets you write both frontend and backend logic in pure Python, eliminating the need to learn JavaScript or manage separate frontend/backend codebases. It uses a reactive state model where UI components automatically update when state changes, similar to modern JavaScript frameworks but expressed entirely in Python. The framework compiles your Python code to a web application and serves it through Starlette and Granian, with real-time communication via WebSockets (python-socketio) for interactive features.

The package includes built-in component libraries (radix, recharts, plotly, markdown, and others) for common UI patterns, plus hosting and deployment tools. It targets developers who want to build interactive web applications without context-switching between languages, and supports modern Python versions (3.10 through 3.14). The framework is in active development with recent releases and a large community presence.

Use it for:

  • Build data dashboards and analytics UIs with reactive state tied to charts and tables.
  • Create internal tools and admin panels where Python backend logic and UI live in one codebase.
  • Prototype full-stack web applications quickly without writing JavaScript or managing API contracts.
  • Deploy Python-based AI/ML applications as interactive web interfaces using event handlers.
  • Build real-time collaborative apps using WebSocket-based state synchronization.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Reflex is a Python framework for building full-stack web applications with frontend and backend entirely in Python, then deploying them as interactive web services.

Yes, if you want to build web applications entirely in Python and are comfortable with a framework in Beta status. The low install friction, active maintenance, permissive license, and zero known vulnerabilities make it a reasonable choice for prototyping and internal tools. For production systems requiring long-term stability guarantees, verify that the framework's maturity and component ecosystem meet your needs.

Install

reflex on PyPI

pip

pip install reflex

uv

uv add reflex

poetry

poetry add reflex

Installing reflex

Before you install

Installation is low-friction; the package is pure Python and pulls in 26 runtime dependencies including web servers (granian, starlette), async utilities (python-socketio, httpx), and component libraries. Maintenance is active with a recent release (10 days old) and steady repository activity.

License in practice

Licensed under Apache-2.0 (permissive), which allows commercial and private use with minimal restrictions—suitable for most production and proprietary projects.

Quickstart

# Install
pip install reflex

# Create and run a minimal app
import reflex as rx

class State(rx.State):
    count: int = 0

def index():
    return rx.vstack(rx.heading(State.count))

app = rx.App()
app.add_page(index)

# Then: reflex run

Requires Python 3.10 or later; virtual environment strongly recommended to ensure the reflex CLI is available in PATH.

Verify before relying

  • Performance characteristics and scalability limits for production workloads.
  • Maturity of the component library and how it compares to established web frameworks.
  • Learning curve and documentation depth for developers new to reactive state management.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (<4.0,>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 26 — click, granian, httpx, packaging, psutil, python-multipart, python-socketio, redis, reflex-base, reflex-components-code, reflex-components-core, reflex-components-dataeditor, reflex-components-gridjs, reflex-components-lucide, reflex-components-markdown, reflex-components-moment, reflex-components-plotly, reflex-components-radix, reflex-components-react-player, reflex-components-recharts, reflex-components-sonner, reflex-hosting-cli, rich, starlette, typing-extensions, wrapt
Maintenance actively maintained — 10 days since the last release
Last repo commit
First released
Downloads 417,527/month — #6,816 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: reflex-0.9.8-py3-none-any.whl

Keywords: framework, web

Development Status :: 4 - BetaLicense :: OSI Approved :: Apache Software LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Tags

python web frameworkfull-stack python appsbuild web ui in pythonpython to web deploymentreactive python web appspython frontend backendno javascript web framework
python-web-frameworkfull-stackreactive-ui

More Application Frameworks packages

fastapi

FastAPI is a Python web framework for building…

permissive · top 100 on PyPI

annotated-doc

Provides a way to document function parameters,…

permissive · top 100 on PyPI

textual

Textual is a Python framework for building…

permissive · top 100 on PyPI

typer

Typer builds command-line applications from…

permissive · top 1,000 on PyPI

mcp

Build and connect to Model Context Protocol…

permissive · top 1,000 on PyPI

Werkzeug

Werkzeug is a WSGI utility library providing…

permissive · top 1,000 on PyPI

reflex-components-core

Provides a collection of UI components for…

permissive · top 15,000 on PyPI

reflex-hosting-cli

A command-line tool for managing Reflex…

permissive · top 15,000 on PyPI

flet-web

Flet-web is the web client component of Flet,…

permissive · top 15,000 on PyPI

prefab-ui

Prefab is a Python UI framework for building…

permissive · top 15,000 on PyPI

reflex-components-gridjs

Provides Reflex components for integrating…

permissive · top 15,000 on PyPI

flet

Flet is a Python framework for building…

permissive · top 15,000 on PyPI

reflex-components-code

Provides reusable code display components for…

permissive · top 15,000 on PyPI

reflex-components-lucide

Provides Lucide icon components for Reflex web…

permissive · top 15,000 on PyPI

reflex-components-moment

Provides Reflex UI components for moment-based…

permissive · top 15,000 on PyPI

reflex-components-recharts

Provides Recharts charting components for use…

permissive · top 15,000 on PyPI