Build a multilingual website with a Wagtail-style admin panel using FastAPI.
Expose page and menu content as a JSON API for a separate front-end app.
Assemble page content from reusable blocks like Markdown, images, and custom HTML.
| glanzel/ragtail | 0-bingwu-0/live-interpreter | 0cm-labs/tokenizer-benchmark | |
|---|---|---|---|
| Stars | 2 | 2 | 2 |
| Language | Python | Python | Python |
| Setup difficulty | moderate | moderate | moderate |
| Complexity | 3/5 | 2/5 | 2/5 |
| Audience | developer | general | researcher |
Figures from each repo's GitHub metadata at analysis time.
Requires setting up an Oxyde database configuration and running a database seed command before first use.
Ragtail is a content management system for building websites, built with Python and FastAPI. A CMS is software that lets you create and organize pages, images, and navigation menus for a website without hand coding every page. Ragtail borrows its design and admin interface style from Wagtail, a well known Python CMS, but is built on newer underlying pieces: an ORM called Oxyde (the layer that talks to the database) and FastAPI as the web framework. The project is in an early, alpha stage, so its structure and behavior can still change between releases. Even so, it already includes a working set of features: a hierarchical page model so pages can be nested under each other, support for pages in multiple languages, and named navigation menus with nested items. Pages and menus are available through a JSON API by default, which means other applications or front ends can pull the content programmatically. If you want Ragtail to render full HTML pages itself, it supports optional template rendering using Jinja2 or PyJSX. The admin panel is built to feel like Wagtail's, with a login screen, a page explorer for browsing your site structure, a page editor, and an image library. That image library includes support for focal points and automatic image resizing (renditions), using the Pillow image library under the hood. Content on pages can also be built from StreamField, a system of reusable content blocks such as Markdown text, HTML, images, or custom structured blocks, each of which can use its own template. To use Ragtail as a library, you install it with the uv package manager, initialize an Oxyde configuration file, and register Ragtail's models. A command line tool creates the database, runs migrations, sets up a language, and creates a staff user in one step. From there, you mount Ragtail onto an existing FastAPI application and open the admin panel in a browser. Custom page types can be defined in Python by extending a base Page class and adding fields. Features the project explicitly leaves for later include document management, workflows, and role based permissions. Documentation is organized by topic, covering installation, FastAPI integration, models, images, StreamField, the admin UI, routing, and menus, and a runnable demo project is included for local testing.
An early-stage Python CMS for building multilingual websites, styled after Wagtail and built on FastAPI.
Mainly Python. The stack also includes Python, FastAPI, Oxyde ORM.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.