Skip to content

Installation

@ekrooh/bare is published to npm. Install it from the root of your frontend package:

Terminal window
npm install @ekrooh/bare

The package ships compiled ESM JavaScript + type declarations (dist/) via the exports map — no build step on your side, no TypeScript source shipped.

Import pathContents
@ekrooh/bare/coreWire protocol, plugin kernel, RPC messenger, types
@ekrooh/bare/runtimeWorklet runtime factory + loopback server wiring
@ekrooh/bare/pluginsCanonical plugin factories (createDefaultPlugins)
@ekrooh/bare/plugins/*/eventsTyped event builders per plugin
@ekrooh/bare/transportsWebSocket + mock MessageTransports
  • Android: io.github.anderscan.ekrooh:bare-host on Maven Central (GitHub Packages as a fallback); a self-contained AAR — the Bare Kit runtime ships inside it.
  • iOS: the Swift package BareHost from the repo root Package.swift, at the same release tag; BareKit.xcframework comes with it as a SwiftPM binary target.

One semver vX.Y.Z covers the whole framework — JS package, Android AAR, and every artifact. Breaking the wire protocol, plugin contracts, JS exports, or the Kotlin host API is a major-version event. The JS type surface, the Kotlin API and the Swift API are each pinned by a committed snapshot, so a change to them fails CI until it is reviewed.