feat: split distribution into npm core + copy-first components#1
Open
anistark wants to merge 1 commit into
Open
feat: split distribution into npm core + copy-first components#1anistark wants to merge 1 commit into
anistark wants to merge 1 commit into
Conversation
Adopt the shadcn split decided in plan/open-questions §1: component source is still copied into the user's project via `runek add`, but the runtime now ships as the published `@runek/core` npm package that the components import, rather than being vendored alongside them. This lets core improvements (editor, fog, palette, the data model) reach users via `pnpm update` while the component layer they own stays opt-in. `@runek/core` gains a tsup build (ESM + `.d.ts`) and a `publishConfig` that repoints its entry at `dist` for npm while the monorepo keeps reading `src`; it is no longer private. The CLI stops vendoring core: it writes component source verbatim (no import rewrite) and installs `@runek/core` as a dependency, so `coreImport` is gone from `runek.config.json`. `build-registry.mjs` classifies `@runek/core` as an npm dependency pinned to core's version and no longer emits a `core` registry item; manifests are regenerated. Determinism is unchanged: core is lockfile-pinned and `rng` stays frozen across versions. Docs (README, AGENTS, registry README, getting-started, CLI reference, and the guides) now import the runtime from `@runek/core` and drop the copied-core / `coreImport` model.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adopt the shadcn split decided in plan/open-questions §1: component source is still copied into the user's project via
runek add, but the runtime now ships as the published@runek/corenpm package that the components import, rather than being vendored alongside them. This lets core improvements (editor, fog, palette, the data model) reach users viapnpm updatewhile the component layer they own stays opt-in.@runek/coregains a tsup build (ESM +.d.ts) and apublishConfigthat repoints its entry atdistfor npm while the monorepo keeps readingsrc; it is no longer private. The CLI stops vendoring core: it writes component source verbatim (no import rewrite) and installs@runek/coreas a dependency, socoreImportis gone fromrunek.config.json.build-registry.mjsclassifies@runek/coreas an npm dependency pinned to core's version and no longer emits acoreregistry item; manifests are regenerated. Determinism is unchanged: core is lockfile-pinned andrngstays frozen across versions.Docs (README, AGENTS, registry README, getting-started, CLI reference, and the guides) now import the runtime from
@runek/coreand drop the copied-core /coreImportmodel.