# reflex-dev/reflex

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/reflex-dev-reflex).**

28,136 stars · 1,690 forks · Python · apache-2.0

## Links

- GitHub: https://github.com/reflex-dev/reflex
- Homepage: https://reflex.dev
- awesome-repositories: https://awesome-repositories.com/repository/reflex-dev-reflex.md

## Topics

`framework` `gui` `open-source` `python` `web`

## Description

Reflex is a full-stack web framework that enables the development of complete web applications using only Python. It provides a unified environment where server-side logic and client-side interfaces are synchronized through a shared, event-driven architecture. By using a declarative component language, the framework compiles code into reactive frontend elements and backend event handlers, allowing developers to manage the entire application lifecycle within a single codebase.

The framework distinguishes itself through its reactive state management and integrated AI-assisted development tools. It utilizes a centralized state manager that automatically triggers interface updates in real time whenever underlying data changes, streaming these updates over a persistent bidirectional connection. Additionally, it supports iterative software generation by allowing developers to define requirements and refine components through natural language instructions and integrated AI coding assistants.

Beyond its core orchestration, the framework includes built-in tools for database management, including an object-relational mapping layer that automates schema migrations and data operations. It provides a comprehensive suite of UI primitives for layout, data visualization, and user input, while also offering utilities for static asset compilation and cloud deployment. The framework includes a development server that provides live previews and automatic updates during the coding process.

## Tags

### Programming Languages & Runtimes

- [Runtime Environments](https://awesome-repositories.com/f/programming-languages-runtimes/runtime-execution-environments/runtime-environments.md) — Executes application logic within a single environment that manages both server-side and client-side rendering.
- [Domain Specific Languages](https://awesome-repositories.com/f/programming-languages-runtimes/programming-language-varieties/domain-specific-languages.md) — Constructs complex user interfaces using a declarative language that compiles into reactive components.

### Web Development

- [Full-Stack Frameworks](https://awesome-repositories.com/f/web-development/full-stack-frameworks.md) — Provides a unified environment for building both frontend and backend logic within a single codebase.
- [Unified Web Frameworks](https://awesome-repositories.com/f/web-development/unified-web-frameworks.md) — Synchronizes server-side and client-side logic through shared state and event architectures.
- [State Synchronization Protocols](https://awesome-repositories.com/f/web-development/state-synchronization-protocols.md) — Updates the user interface by streaming state changes from the server to the client over a persistent channel.
- [Static Site Generators](https://awesome-repositories.com/f/web-development/static-site-generators.md) — Supports static site export by converting applications into a collection of static files. ([source](https://reflex.dev/docs/api-reference/cli/))

### Software Engineering & Architecture

- [Full-Stack Orchestrators](https://awesome-repositories.com/f/software-engineering-architecture/full-stack-orchestrators.md) — Orchestrates full-stack applications by synchronizing server-side logic with client-side interfaces. ([source](https://reflex.dev/docs/advanced-onboarding/how-reflex-works/))
- [Backend Logic Controllers](https://awesome-repositories.com/f/software-engineering-architecture/backend-logic-controllers.md) — Manages backend logic by executing server-side processes and handling data persistence. ([source](https://reflex.dev/docs/advanced-onboarding/how-reflex-works/))
- [Event-Driven Architectures](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-architectures.md) — Handles complex user interactions by routing events through a centralized state manager.
- [Event Processing Engines](https://awesome-repositories.com/f/software-engineering-architecture/event-processing-engines.md) — Processes application events by routing user interactions through a centralized queue to update state. ([source](https://reflex.dev/docs/advanced-onboarding/how-reflex-works/))
- [Reactive State Graphs](https://awesome-repositories.com/f/software-engineering-architecture/reactive-state-graphs.md) — Automatically recalculates derived variables and triggers interface updates when source data changes.

### User Interface & Experience

- [Reactive State Management](https://awesome-repositories.com/f/user-interface-experience/reactive-state-management.md) — Automatically synchronizes user interface displays with underlying data changes in real time.
- [Reactive UI Frameworks](https://awesome-repositories.com/f/user-interface-experience/reactive-ui-frameworks.md) — Provides reactive interface construction using reusable components that automatically update the display. ([source](https://reflex.dev/docs/advanced-onboarding/how-reflex-works/))
- [Reactive UI Libraries](https://awesome-repositories.com/f/user-interface-experience/reactive-ui-libraries.md) — Provides reusable components that automatically update the rendered display based on state changes.
- [Application State Managers](https://awesome-repositories.com/f/user-interface-experience/application-state-managers.md) — Manages application variables to trigger interface updates during the lifecycle. ([source](https://reflex.dev/docs/state/overview/))
- [Event-Driven State Managers](https://awesome-repositories.com/f/user-interface-experience/event-driven-state-managers.md) — Propagates state updates across an application in response to user interactions.
- [Computed State Properties](https://awesome-repositories.com/f/user-interface-experience/computed-state-properties.md) — Automatically recalculates values based on dependencies to maintain data consistency. ([source](https://reflex.dev/docs/state/overview/))
- [Input Collection Components](https://awesome-repositories.com/f/user-interface-experience/input-collection-components.md) — Collects user input through interactive form fields, checkboxes, and buttons. ([source](https://reflex.dev/docs/library/))
- [Layout Containers](https://awesome-repositories.com/f/user-interface-experience/layout-containers.md) — Organizes interface elements using stacks, grids, and responsive containers. ([source](https://reflex.dev/docs/library/))
- [Data Visualization Components](https://awesome-repositories.com/f/user-interface-experience/data-visualization-components.md) — Visualizes numerical data using interactive charts and graphs. ([source](https://reflex.dev/docs/library/))
- [Event Triggering Systems](https://awesome-repositories.com/f/user-interface-experience/event-triggering-systems.md) — Binds user interactions to component properties to initiate state updates. ([source](https://reflex.dev/docs/state/overview/))
- [User Event Handlers](https://awesome-repositories.com/f/user-interface-experience/user-event-handlers.md) — Defines handlers that trigger state changes and side effects in response to user interactions. ([source](https://reflex.dev/docs/events/events-overview/))

### Artificial Intelligence & ML

- [AI Coding Assistants](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-coding-assistants.md) — Leverages machine learning to generate and refine code based on natural language prompts.
- [Generative AI Frameworks](https://awesome-repositories.com/f/artificial-intelligence-ml/generative-ai-frameworks.md) — Enables automated software generation by refining code and interface components through iterative instructions. ([source](https://reflex.dev/docs/ai/overview/best-practices/))
- [AI Coding Assistant Integrations](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-coding-assistant-integrations.md) — Supports integration with AI coding assistants by registering server configurations that provide necessary context. ([source](https://reflex.dev/docs/ai/integrations/mcp-installation/))

### Data & Databases

- [Object-Relational Mappers](https://awesome-repositories.com/f/data-databases/object-relational-mappers.md) — Abstracts database interactions by mapping application models to relational tables.
- [Database Migration Tools](https://awesome-repositories.com/f/data-databases/database-migration-tools.md) — Automates database schema migration by generating and applying migration files. ([source](https://reflex.dev/docs/database/overview/))
- [Database-Driven Frameworks](https://awesome-repositories.com/f/data-databases/database-driven-frameworks.md) — Manages persistent data storage and schema migrations directly within the application code.

### Part of an Awesome List

- [Dashboards and BI](https://awesome-repositories.com/f/awesome-lists/data/dashboards-and-bi.md) — Full-stack Python framework for building web apps.
- [Deployment and Hosting](https://awesome-repositories.com/f/awesome-lists/devops/deployment-and-hosting.md) — Framework for building and deploying full-stack web apps.
- [Web Frameworks](https://awesome-repositories.com/f/awesome-lists/devtools/web-frameworks.md) — Web apps built in pure Python.

### Development Tools & Productivity

- [Development Servers](https://awesome-repositories.com/f/development-tools-productivity/development-servers.md) — Includes a development server that previews applications while automatically updating upon source changes. ([source](https://reflex.dev/docs/api-reference/cli/))
- [Prototyping Tools](https://awesome-repositories.com/f/development-tools-productivity/prototyping-tools.md) — Accelerates the transition from conceptual ideas to functional software products using automated tools.
- [Static Asset Bundlers](https://awesome-repositories.com/f/development-tools-productivity/static-asset-bundlers.md) — Transforms dynamic application code into a bundle of optimized static files for deployment.

### DevOps & Infrastructure

- [Cloud Deployment CLI Tools](https://awesome-repositories.com/f/devops-infrastructure/cloud-deployment-cli-tools.md) — Facilitates cloud deployment by authenticating accounts and pushing project files via command-line. ([source](https://reflex.dev/docs/api-reference/cli/))
