Glossary
A short reference for the terms used throughout the bQuery.js documentation. Cross-links point to the modules where each term is defined in depth.
Reactivity
Signal — A reactive value container with .value (tracked read) and .peek() (untracked read). Created with signal(). Writes notify dependents.
Computed — A read-only derived signal computed from other signals. Lazy and memoized. See computed().
Linked signal — A read-write signal computed from a source, with a custom setter. See linkedSignal().
Effect — A callback that re-runs whenever any signal read inside it changes. Created with effect().
Watch / watchDebounce / watchThrottle — Observe a signal or computed and run a callback with (newValue, oldValue). Debounced and throttled variants share the same callback shape.
Scope (effect scope) — A collection of effects, computeds, and signals that can be disposed together via effectScope().
Batch — A block that defers signal notifications until all writes inside complete. See batch().
Untrack — Read a signal without registering a dependency. See untrack() and .peek().
DOM and components
BQueryElement — The chainable wrapper returned by $(selector). Throws if no element matches.
BQueryCollection — The chainable wrapper returned by $$(selector). Tolerates zero matches.
Directive — A bq-* attribute interpreted by the view module to bind reactive state to DOM (e.g., bq-if, bq-for, bq-on).
Component — A typed Web Component defined via component() with reactive props, slots, refs, and lifecycle hooks.
Slot — A named insertion point inside a component template, used via useSlot() / hasSlot().
Ref — A handle to a DOM node inside a component template, exposed via useRef().
Rendering and hydration
CSR (Client-Side Rendering) — HTML is generated by JavaScript in the browser.
SSR (Server-Side Rendering) — HTML is generated on the server before the browser parses it. See the SSR module.
Streaming SSR — SSR that flushes chunks of HTML to the response as they're ready, instead of waiting for the full page. See renderToStream and flushBoundary.
Hydration — Attaching client-side reactivity to server-rendered HTML so it becomes interactive.
Resumability — A hydration strategy that resumes server-built state on the client without re-running setup code, via createResumableState.
SSR cache — Per-fragment or per-route caching of SSR output, configured with createSSRCache.
Server, routing, transport
Router — Client-side routing with guards, params, and reactive route signals. See router.
Navigation result — The outcome of push / replace (success, aborted, redirected, error). See pushResult / replaceResult.
Guard — A function that can allow, deny, or redirect a navigation. See router guards.
Server context (ctx) — The per-request object exposed by createServer() handlers, with body, cookies, accepts, stream, sse, renderStream, renderResponse, etc. See the Server module.
Channel — A multiplexed logical stream over a single WebSocket connection. See useWebSocketChannel.
SSE (Server-Sent Events) — A one-way text streaming protocol over HTTP. Client: useEventSource; server: ctx.sse.
Plugins and DI
Plugin — A package of directives, hooks, DI bindings, and lifecycle behavior installed with use() and removed with unuse() / uninstall().
Hook bus — The plugin-scoped addFilter/applyFilters and addAction/doAction pair exposed inside PluginInstallContext.
Injection key — A typed key for dependency injection between plugins / components, created with createInjectionKey().
State and forms
Store — A signal-based state container with actions and persistence plugins. See createStore.
Form state — The reactive object returned by createForm() with isDirty, isValid, isValidating, isFocused, submitCount, etc.
Field array — A dynamic list of form fields, created with createFieldArray().
Validation strategy — When validators run (onChange, onBlur, onSubmit, onTouched).
Concurrency
Task worker — A zero-build worker started via createTaskWorker() or runTask().
RPC worker / pool — Explicit method-dispatch workers via createRpcWorker() / createRpcPool().
Transferable — A value that can be transferred (zero-copy) across a worker boundary using withTransferables().
Shared buffer — A SharedArrayBuffer wrapper created with createSharedBuffer().
Devtools and testing
Timeline — A ring-buffered list of devtools events (signal create/update/dispose, effect run/dispose, component mount/unmount, route guard, error caught, …). See Devtools.
Trace — Per-signal subscription history captured via traceSignal().
Snapshot (devtools) — A serializable dump of signals/stores produced by exportDevtoolsSnapshot().
screen / within — Shadow-DOM-aware test queries from @bquery/bquery/testing.
userEvent — A high-level event helper namespace (click, type, tab, paste, …) modelled after Testing Library's API.