Agnostic by construction
No Angular, no React, no RxJS, no Signals. Plain TypeScript that returns a URI and parses a body.
@qubeejs/core is a framework-agnostic query builder and paginator with pluggable drivers for 20 backend querying standards. It performs no I/O — you fetch however you like and hand the body back.
Using React? Check the React adapter.

No Angular, no React, no RxJS, no Signals. Plain TypeScript that returns a URI and parses a body.
Import one driver and the other nineteen tree-shake out. Zero runtime dependencies, ever.
Filters, operators, sorting, field selection, includes, embeds and pagination in one chain.
QubeeStore speaks the useSyncExternalStore contract — each adapter supplies its own.
Pick a driver, describe the query, call generateUri(). Every driver speaks its own dialect of filters, sorts and pagination — the builder API stays identical.
| import | min | gzip |
|---|---|---|
STRAPI_DRIVER | 7.1 kB | 2.7 kB |
DRIVERS (all 20) | 57 kB | 10.9 kB |
import { createQubee, STRAPI_DRIVER, SortEnum } from '@qubeejs/core';
const { builder } = createQubee({ driver: STRAPI_DRIVER });
const uri = builder
.setResource('articles')
.addFilter('status', 'published')
.addSort('createdAt', SortEnum.DESC)
.setLimit(25)
.generateUri();
// → /articles?filters[status][$eq]=published
// &sort[0]=createdAt:desc
// &pagination[page]=1&pagination[pageSize]=25