# pydantic/fastui

**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/pydantic-fastui).**

8,970 stars · 341 forks · Python · MIT · archived

## Links

- GitHub: https://github.com/pydantic/FastUI
- Homepage: https://fastui-demo.onrender.com
- awesome-repositories: https://awesome-repositories.com/repository/pydantic-fastui.md

## Topics

`fastapi` `pydantic` `python` `react`

## Description

FastUI is a server-driven UI system and Pydantic UI framework that transforms backend data models into functional web interfaces. It operates as a model-based frontend generator where the server controls the layout and behavior of the user interface through structured data schemas, enabling a low-code approach to web development.

The project allows for the definition of visual hierarchies and component properties on the backend, using a JSON-based protocol to communicate UI structure between the server and client. It utilizes schema-driven generation to automate the creation of interfaces, including the automatic construction of input fields and validation logic by mapping data models directly to UI components.

The framework covers a broad range of interface capabilities, including declarative layout organization, page navigation management, and data visualization via interactive tables and structured data rendering. It also provides a system for UI state and feedback, rich media embedding, and a mechanism for implementing custom UI components.

## Tags

### Software Engineering & Architecture

- [Schema-Driven Generators](https://awesome-repositories.com/f/software-engineering-architecture/schema-driven-generators.md) — Generates complete frontend interfaces by interpreting structured data models sent from the server.
- [Automatic Form Generation](https://awesome-repositories.com/f/software-engineering-architecture/schema-based-state-validation/form-validation-schemas/automatic-form-generation.md) — Automatically constructs input fields and validation logic by mapping Pydantic data models directly to UI components.
- [Server-Driven Navigation](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-architectures/server-driven-navigation.md) — Implements a routing system for moving between views through server-driven event triggers. ([source](https://docs.pydantic.dev/fastui/))

### User Interface & Experience

- [Schema-Based Generators](https://awesome-repositories.com/f/user-interface-experience/forms/dynamic-form-generation/schema-based-generators.md) — Automatically renders complete input forms based on Pydantic data model schemas. ([source](https://docs.pydantic.dev/fastui/api/python_components/))
- [Declarative Component-Driven Interfaces](https://awesome-repositories.com/f/user-interface-experience/component-utilities/ui-frameworks/rendering-models/declarative-frameworks/declarative-component-driven-interfaces.md) — Maps backend data properties to visual elements through declarative definitions to generate user interfaces. ([source](https://cdn.jsdelivr.net/gh/pydantic/fastui@main/README.md))
- [Data Entry Forms](https://awesome-repositories.com/f/user-interface-experience/data-tables/data-entry-forms.md) — Provides structured input forms for users to enter or modify data records. ([source](https://docs.pydantic.dev/fastui/api/python_components/))
- [Event-Driven State Synchronizers](https://awesome-repositories.com/f/user-interface-experience/event-driven-state-managers/event-driven-state-synchronizers.md) — Implements a system where server-sent event payloads trigger interface changes and component tree updates.
- [Model-Based Frontend Generators](https://awesome-repositories.com/f/user-interface-experience/model-based-frontend-generators.md) — Transforms backend data models into interactive web components and navigation flows automatically.
- [Server-Side Components](https://awesome-repositories.com/f/user-interface-experience/ui-component-libraries/server-side-components.md) — Defines visual hierarchies and component properties on the backend to keep state and logic in a single language.
- [Admin Dashboards](https://awesome-repositories.com/f/user-interface-experience/admin-dashboards.md) — Facilitates the development of back-office dashboards and management consoles for server-side data collections.
- [Custom Component Injection](https://awesome-repositories.com/f/user-interface-experience/custom-element-renderers/custom-component-injection.md) — Provides mechanisms to replace placeholder components with live content fetched from server endpoints.
- [Dynamic Data Tables](https://awesome-repositories.com/f/user-interface-experience/dynamic-data-tables.md) — Renders complex datasets into interactive tables and lists with server-driven pagination and filtering.
- [Page Layout Frameworks](https://awesome-repositories.com/f/user-interface-experience/page-layout-frameworks.md) — Offers a system for organizing high-level structural arrangements of pages using containers, navigation bars, and footers. ([source](https://docs.pydantic.dev/fastui/api/python_components/))
- [Paginated Content Collection Displays](https://awesome-repositories.com/f/user-interface-experience/pagination-metadata-displays/paginated-content-collection-displays.md) — Presents sequences of data models in tables with integrated pagination and detailed item views. ([source](https://docs.pydantic.dev/fastui/api/python_components/))

### Part of an Awesome List

- [Server Driven UI](https://awesome-repositories.com/f/awesome-lists/devtools/server-driven-ui.md) — Controls the layout and behavior of the frontend application directly via server responses.
- [Loading and Feedback](https://awesome-repositories.com/f/awesome-lists/devtools/loading-and-feedback.md) — Provides a suite of feedback components including toast messages, loading spinners, and error alerts. ([source](https://docs.pydantic.dev/fastui/api/python_components/))

### Web Development

- [JSON Schema Representations](https://awesome-repositories.com/f/web-development/backend-development/web-frameworks/rendering-and-layout-architectures/component-based-page-layouts/json-schema-representations.md) — Uses standardized JSON schemas to communicate UI structure and component properties between the server and client.
- [Pydantic UI Frameworks](https://awesome-repositories.com/f/web-development/pydantic-ui-frameworks.md) — Provides a framework for building web interfaces by defining Pydantic models on the server.
- [JavaScript-Free Web Interfaces](https://awesome-repositories.com/f/web-development/javascript-free-web-interfaces.md) — Enables building web frontends using Python data models, avoiding the need for manual HTML or JavaScript.

### Data & Databases

- [Interactive Table Rendering](https://awesome-repositories.com/f/data-databases/dataframe-integration/interactive-table-rendering.md) — Displays tabular data from models with configurable columns, interactive links, and formatted fields. ([source](https://docs.pydantic.dev/fastui/))

### System Administration & Monitoring

- [Low-Code Generators](https://awesome-repositories.com/f/system-administration-monitoring/backend-dashboards/low-code-generators.md) — Generates data entry forms and administrative dashboards automatically without requiring custom HTML or CSS.
