ferro-json-ui
JSON-based server-driven UI schema types for the Ferro web framework.
Define UI as a JSON spec and have Ferro render it to HTML on the server — no frontend build step required.
Features
- 41 built-in components (Card, Form, DataTable, KanbanBoard, Modal, Tabs, Alert, Badge, Button, ...) and a plugin system for custom components
- Layout system (
dashboard,app,auth) and ID-keyed element graph with parse-time structural validation - Action system: navigate, submit form, call API, open modal
- Data binding via JSON Pointer (
{"$data": "/path"}) and iteration directives ($each,$if) - Compile-time schema validation via
schemarson every typed*Props
Usage
Serve a spec from a Rust handler:
use ;
pub async
Or construct a spec in Rust:
use ;
let spec = builder
.title
.element
.build
.unwrap;
Documentation
Full documentation at docs.ferro-rs.dev.
License
MIT