Ecosystem

Elur is a modular framework. The core package (@elurjs/core) provides signals, templates, components, router, forms, and stores. The ecosystem packages build on top of the core for specific use cases.

# Official packages

# @elurjs/kit

Full-stack meta-framework — file-based routing, SSG/SSR, islands, content collections, server actions, and deployment adapters.

# @elurjs/query

CQRS-style data library — createQuery for reads, createCommand for writes, caching, deduplication, optimistic rollback, offline queue, and DevTools integration.

# @elurjs/ionic

Ionic bridge for Elur — native mobile components, IonRouterOutlet, page lifecycle hooks, and Capacitor builds for iOS/Android.

# @elurjs/auth

Authentication utilities — JWT and session-cookie drivers, multi-provider auth (credentials, OIDC, API keys), token refresh, and policy-based authorization.

# @elurjs/i18n

Internationalization — reactive translations, pluralization, number/currency/ date formatting, async loading, namespaces, and locale detection.

# Installation

Each package can be installed independently:

npm install @elurjs/core @elurjs/query
npm install @elurjs/core @elurjs/kit

All ecosystem packages depend on @elurjs/core as a peer dependency.

# When to use what

  • Just @elurjs/core — SPAs, simple apps, components, when you don't need SSR or a build step
  • @elurjs/kit — full-stack apps, SSR/SSG, file-based routing, content sites, production deployments
  • @elurjs/query — apps that fetch data from APIs and need caching, deduplication, or optimistic updates
  • @elurjs/ionic — hybrid mobile apps targeting iOS and Android with native UI components
  • @elurjs/auth — apps that need authentication, session management, or route protection
  • @elurjs/i18n — apps that need multi-language support with reactive translations