-
Notifications
You must be signed in to change notification settings - Fork 0
FastHTML
title: FastHTML type: framework created: 2026-05-26 last_updated: 2026-05-26 related: ["radar/languages/Mesop", "radar/platforms/CloudflareWorkers"] sources: ["https://fastht.ml/"] radar_quadrant: Languages & Frameworks radar_ring: Assess radar_position: inner
Python web framework for building modern web applications without JavaScript. Uses HTMX for dynamic UI behaviour and renders HTML directly from Python, keeping the entire stack in one language.
Standard web development splits into two languages: Python (or another server-side language) for the backend, and JavaScript for the frontend. FastHTML eliminates this split. The server renders HTML, and HTMX extends that HTML with attributes that enable partial page updates, form submission without full reload, and live search — covering most interactive UI patterns without a JavaScript framework.
FastHTML builds on Starlette (ASGI) and uses a Python DSL for generating HTML elements. Components are Python functions that return HTML nodes. HTMX attributes are applied directly in Python, specifying which server route to call and which part of the page to update with the response.
The result is a request-response model — familiar from server-rendered web apps — with the interactive feel of a SPA, but with no build toolchain, no npm, and no context switch to JavaScript.
FastHTML is aimed at Python developers who want to build full web applications without adopting a JavaScript framework. The primary use cases are:
- Internal tools and admin panels — where teams are Python-native and UI complexity is bounded
- Data applications and dashboards — where the rendering logic is already in Python
- Rapid prototypes — where a frontend engineer is not available
- AI demos — where the application logic and the UI layer should share the same runtime
It is not suited to applications requiring complex client-side state, offline capability, or a rich component ecosystem.
radar/languages/Mesop (Google's Python UI framework) and FastHTML occupy similar space but differ in model. Mesop uses a reactive component model analogous to React; FastHTML uses server-rendered hypermedia with HTMX. FastHTML gives more control over the HTTP layer; Mesop offers a higher-level component abstraction. Teams without a preference for either model should evaluate both.
FastHTML sits in the Assess ring of the Languages & Frameworks quadrant, at inner position. First studied via fastht.ml (2024-07-31). Created by Jeremy Howard (fast.ai), which provides credibility and an active community. Inner position reflects zero JavaScript toolchain requirement, pip-installable, and direct applicability to any Python project needing a web UI. Distinct enough from Mesop (reactive components) and Streamlit (data-focused) to warrant its own assessment. Remaining gate before Trial is a completed web application serving real users with at least one HTMX-driven dynamic interaction in production.