API reference

Framework APIs with signatures, parameters, and copy-paste examples — controllers, router, state, components, and services.

Browse by module. Each page lists signatures, parameters, return types, and runnable-style examples you can copy. All import examples use scaffold path aliases (@core/, @services/, …).

Start with Path aliases if you are new to scaffold imports. Narrative walkthrough: Ebook — API quick reference · Cheat sheet

Path aliases

Aliases are wired in tsconfig.json / Vite and mirrored in the browser import map at build time.

AliasResolves to (on disk)Use for
@core/ .nativecore/core/ Framework runtime — controller, router, state, http, i18n, …
@core-utils/ .nativecore/utils/ Templates, DOM helpers, events, cache busting
@core-types/ .nativecore/types/ Shared framework types
@testing/ .nativecore/testing/ Vitest helpers (mountComponent, waitFor, fireEvent)
@dev/ .nativecore/dev/ Dev-only tools (localhost)
@components/ src/components/ App UI and built-in nc-* components
@services/ src/services/ api, storage, logger services
@stores/ src/stores/ Global stores (make:store)
@middleware/ src/middleware/ Route middleware (make:middleware)
@routes/ src/routes/ Route tables (routes.js)
@config/ src/config/ Client env and app config
@utils/ src/utils/ App-level utilities
@constants/ src/constants/ App constants
@types/ src/types/ App TypeScript types

@core/, @services/, @components/, …

Path aliases

Every framework and app import uses a path alias with the `.js` extension. Use this page as the canonical alias reference for all API examples.

1 reference entries

@core/controller.js

CoreController

Base class for page controllers. Binds to a view root (`[data-view]`), wires refs, reactive state, DOM bindings, and auto-cleaned event listeners.

12 reference entries

@core/component.js

CoreComponent

Base class for Web Components. Shadow DOM by default, reactive state, template rendering, and custom events.

5 reference entries

@core/router.js

Router

History API router with middleware, HTML caching, prefetch, loaders, and lazy controllers. Configure routes in `registerRoutes(r)`.

10 reference entries

@core/state.js

State & signals

Global reactive primitives — module-scoped signals, derived values, effects, and batching.

5 reference entries

@core/lazyController.js

createLazyController

Lazy-load controller modules at navigation time. Never import controllers at the top of `routes.js`.

2 reference entries

@core/createMiddleware.js

createMiddleware

Tag-aware route middleware for auth, roles, and guards.

1 reference entries

@core-utils/templates.js

Templates & sanitization

Tagged templates for safe HTML and CSS in components and controllers.

3 reference entries

@core/http.js

HTTP client

Low-level fetch wrapper with interceptors. For caching and tags, use `@services/api.service.js`.

4 reference entries

@services/api.service.js

api.service

App-level HTTP service with TTL cache, tag invalidation, and deduplication.

3 reference entries

@core-utils/dom.js

DOM utilities

Scoped queries, element factories, and the `dom.view()` hook/action helper.

3 reference entries

@core-utils/events.js

Event utilities

Standalone event helpers for code outside a controller context.

4 reference entries

@core/i18n.js

i18n

Locale catalogs, translation, and Intl formatters.

4 reference entries

nativecorejs

useForm

Form state helper and validators from the `nativecorejs` package (not a `@core/` export).

1 reference entries

@core/lazyComponents.js

Lazy components

Scan the DOM and lazy-load custom elements on demand.

3 reference entries

@services/storage.service.js

storage.service

Key/value persistence with memory, session, or local strategy.

4 reference entries

@core/sse.js · @core/ws.js

Realtime

Server-Sent Events and WebSocket clients with route-aware cleanup and bounded reconnect.

3 reference entries

nativecorejs

Validators

Validator factories for `useForm`. Each returns `null` when valid or an error string.

7 reference entries

nativecorejs

Plugins

Global lifecycle hooks installed before `router.start()`. Package-only export.

4 reference entries

@services/logger.service.js

logger.service

Leveled logging with optional remote forwarding.

6 reference entries

@testing/index.js

Testing helpers

Vitest + happy-dom helpers for component and controller tests.

3 reference entries

@components/core/

Built-in components

Attributes, slots, and events for every shipped Web Component tag.

58 component tags