Why Vextro?
Vextro is the CMS layer that Convex + Astro projects have been missing. Define your schema once and get a production-ready admin panel — no assembly required.
The best of both worlds
Vextro combines the precision of code-first CMS with the flexibility of UI-driven schema management — all on a real-time Convex backend.
Code-first schema in TypeScript. Your schema drives everything — database shape, admin UI, and validation. Full type safety from definition to query.
Use f.text(), f.richText(), f.select(), f.blocks() — every field builder produces both a Convex validator and its admin UI configuration.
Virtual collections let you manage existing Convex tables through the admin UI without writing field builders. Create and configure collections at runtime.
Map any Convex table to an admin collection at runtime. Useful for external data, shared tables, or content that does not need a code-first schema.
Real-time database, server functions, and file storage in one service. No REST endpoints, no GraphQL schemas — your frontend calls typed functions directly.
Every query is a live subscription. Admin panels update instantly when data changes, across all connected editors.
Six reasons teams choose Vextro
No UI code for your admin
Other frameworks give you UI components to assemble. Vextro generates the entire admin interface from your schema. Add a field to your config — it appears in the admin automatically.
Type safety end-to-end
Field builders produce TypeScript types, Convex validators, and UI configuration in one call. Rename a field and TypeScript catches every callsite. No manual sync between schema and types.
Real-time collaboration built in
Convex queries are reactive. Two editors working on the same collection both see new documents appear live. No polling, no refresh, no WebSocket infrastructure to manage.
Reliability you can audit
Depth certification runs on every PR. Guarantees are written as contracts, backed by tests, and gated by CI. You know exactly what the framework guarantees — and can verify it.
See reliability guarantees →Hooks for every lifecycle event
Run code before a document saves, after it is read, or on deletion. Hooks receive the Convex context — full access to the database, scheduled functions, and storage.
Hook system docs →Schema diagnostics at runtime
A built-in diagnostics page shows fingerprint sync status, all registered collections and globals, and any stale metadata that needs attention. No guessing about schema state.
Schema diagnostics docs →See it in action
Five minutes from install to a working admin panel.