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.
| Alias | Resolves 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