Skip to content

docs-app: preview the unreleased kolay (docs() + apiDocs() plugin split) - #794

Merged
NullVoxPopuli merged 4 commits into
universal-ember:mainfrom
NullVoxPopuli-ai-agent:docs-kolay-preview
Jul 27, 2026
Merged

docs-app: preview the unreleased kolay (docs() + apiDocs() plugin split)#794
NullVoxPopuli merged 4 commits into
universal-ember:mainfrom
NullVoxPopuli-ai-agent:docs-kolay-preview

Conversation

@NullVoxPopuli-ai-agent

@NullVoxPopuli-ai-agent NullVoxPopuli-ai-agent commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

kolay's next release reworks the vite plugin API (universal-ember/kolay#323; the changes are on kolay's main but unreleased). This PR lets us preview those changes on the ember-primitives docs before the release.

How the preview works

kolay pushes its built package contents to its dist branch on every commit to main (via push-dist.yml). A root pnpm.overrides entry resolves kolay to github:universal-ember/kolay#dist for the whole workspace, so docs-app and @universal-ember/docs-support keep their declared semver ranges. When kolay releases, we drop the override and bump the ranges instead.

Migration changes

  • vite.config.mjs: the combined kolay() plugin is split — docs({ rehypePlugins, scope }) (no group: serves the co-located app/templates pages) + apiDocs(["ember-primitives", "which-heading-do-i-need"]).
  • page json configs: componentNametitle for the OTP/OTPInput pages. docs-support's side-nav already falls back to title, and the rendered nav text is identical; the componentName branch is kept so docs-support still works with kolay 5.x.
  • unchanged: the top-level addRoutes(this) still serves co-located pages from the root URL space (URLs stay the same), and setupKolay()'s topLevelScope/modules options are untouched.

Verification

  • docs-app vite build --mode development + testem suite passes locally (the pages test walks every docs page in all three color schemes)
  • lint:types passes in docs-app and packages/docs-support

🤖 Generated with Claude Code

@bolt-new-by-stackblitz

Copy link
Copy Markdown

Review PR in StackBlitz Codeflow Run & review this pull request in StackBlitz Codeflow.

@github-actions

github-actions Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor
Project Preview URL
Docs https://b8ef0630.ember-primitives.pages.dev

Logs

kolay's next release reworks the plugin API (universal-ember/kolay#323):
the combined kolay() vite plugin is split into docs() + apiDocs(), and
page json configs use "title" instead of "componentName".

To preview those changes before the release, resolve kolay to the built
package contents that kolay pushes to its dist branch on every commit
to main (a pnpm override, so the docs-app and docs-support keep their
semver ranges). When kolay releases, the override goes away and the
ranges get bumped instead.

- vite.config: docs({ ... }) serves the co-located app/templates pages;
  apiDocs([...]) takes over the packages list
- addRoutes(this) and setupKolay() are unchanged for this setup
- otp/otp-input page configs: componentName -> title (side-nav already
  falls back to title)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
NullVoxPopuli pushed a commit to universal-ember/kolay that referenced this pull request Jul 27, 2026
A <details> under Install explains that every push to main publishes
the built package contents to the dist branch (push-dist.yml), so the
unreleased kolay can be tried with
pnpm add kolay@github:universal-ember/kolay#dist — or a pnpm override
when a workspace has multiple kolay consumers (this is how
ember-primitives previews the plugin rework, universal-ember/ember-primitives#794).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
NullVoxPopuli-ai-agent and others added 3 commits July 27, 2026 10:41
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
kolay's typedoc renderer writes names (@arg, <:block>) as
<pre class="typedoc__name">, so the prose code-block treatment
(dark slab background, shadow, block padding) swallowed the
reworked types-read-like-code rendering. Exclude them inside the
existing :where() guards (specificity stays zero).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The deploy preview rendered every typedoc token in the prose body
color while dev builds showed the palette. Vite 8's default cssTarget
predates light-dark(), so lightningcss rewrote kolay's colors into
var(--lightningcss-light/dark) space toggles whose :root definitions
don't survive chunking — both fallbacks resolve, the declaration is
invalid at computed-value time, and the color inherits. The rewrite
would also key theming off prefers-color-scheme instead of our
color-scheme toggle. Target browsers that support light-dark()
natively so it ships as authored.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@NullVoxPopuli
NullVoxPopuli merged commit ddca0bd into universal-ember:main Jul 27, 2026
17 checks passed
@NullVoxPopuli
NullVoxPopuli deleted the docs-kolay-preview branch July 27, 2026 16:23
@github-actions github-actions Bot mentioned this pull request Jul 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants