coss ui query builder

qnot's reference builder, made of coss ui components on Base UI. Functions, list conditions, field references and locks, as source you own.

MIT · Base UI · Tailwind v4 · React 18+

licenseMIT
built onBase UI
featuresFull RAQB parity
installOne shadcn add

The coss ui builder that shadcn add installs, live on this page. Edit a rule and watch the exports.

Install it

One command copies the coss ui builder into components/qnot, and installs @qnot/core and @qnot/react. MIT licensed.

pnpm dlx shadcn@latest add https://coss.com/qnot/r/query-builder.json

For a coss ui project (npx shadcn@latest init @coss/style). The coss components it uses come from coss's registry into components/ui.

Source

3 files, exactly what installs

Use it.

Describe your fields, create a store, render the builder. The store's onChange hands you the query.
fields.ts
Filters.tsx

Two files: query-builder.tsx renders groups and rules, controls.tsx holds the editors (selects, comboboxes with async search, list inputs, function editors). Nothing touches the store except through @qnot/react's hooks, so the pair doubles as the recipe for building your own UI.

This is the builder the playground and the examples use.

What you get.

The kit is only the controls. Everything else comes from the qnot store underneath.

Questions people ask

What is coss ui?
coss ui is coss.com's component library, built on Base UI and distributed through a shadcn registry. It is the library this site is made of.
Is it free?
Yes. The builder is MIT licensed, with no API key and no account. The coss ui components it uses come from coss's own registry under coss's terms.
How is it different from the other kits?
It's the reference builder, the one the playground uses. Feature for feature it matches @qnot/react's default UI: grouped object fields, field references and functions on either side of a rule, list conditions ("at least 2 orders where…"), locks, and controls disabled by the store's permissions.
How do I set up a project for it?
Run shadcn init with the coss style (npx shadcn@latest init @coss/style), then shadcn add the builder. The coss ui components it uses come from coss's registry into components/ui.
Can I use it in a shadcn/ui project?
Only if the project uses Base UI. The coss builder and the shadcn/ui builder both install into components/ui with the same component names, so pick one per project. Radix-based shadcn/ui projects should use the shadcn/ui builder.shadcn/ui builder
Can the same query run on the server?
Yes. Share fields.ts with your API, validate the incoming query with validateQuery, then encode it to SQL with bound parameters or a MongoDB filter, or filter rows in memory with compile.Server usage