Quickback Docs

Components

CRUD and action UI for your Quickback API, installed into your own React app with shadcn. Base-ui only.

Add tables, forms, and action dialogs for your API to your own React app with shadcn add. There's no fork of the CMS and no admin framework involved. Each component is a file in your repo, and you edit it like any other code.

npx shadcn add @quickback/resource-table @quickback/resource-form @quickback/action-dialog

Two layers

LayerWho owns itRegenerated?Knows the wire format?
quickback.client.tsThe compiler emits it (client config)Every compileYes. Only this file does.
quickback-provider, resource-table, resource-form, action-dialogYou. shadcn add copies them into your repoNeverNo

The components never build a URL, unwrap a list envelope, or parse application/problem+json. They call the emitted fetch client and read the schema registry for column kinds, guards, and action inputs. When the API changes shape, you recompile and only the client changes. Your edits to the components survive.

Base-ui only

The items target shadcn's base-ui styles (base-nova, base-mira, …). Radix styles are not supported.

  • They compose your own primitives (button, dialog, table, …) through registryDependencies, using base-ui's render= prop where composition is needed.
  • They never use Radix's asChild. On a base-ui project, shadcn add silently rewrites asChild to render={<firstChild />}. That still typechecks but drops the other children.
  • The namespace URL includes the style (/r/{style}/{name}.json), and only base-* paths exist. A Radix project therefore fails at install, with a 404 that names its style, before any file is written.

Pages

On this page