diff --git a/docs/nuxt.config.ts b/docs/nuxt.config.ts index 0bdfefa8..c1b2fd82 100644 --- a/docs/nuxt.config.ts +++ b/docs/nuxt.config.ts @@ -31,6 +31,18 @@ export default defineNuxtConfig({ }, }, + // Dev only: production builds never resolve the hub or its devframes. + // Factories defer the plugin imports, so `docs:build` needs no built workspace packages. + $development: { + modules: [['@devframes/nuxt/hub', { + quiet: true, + devframes: [ + () => import('@devframes/plugin-a11y').then(m => m.createA11yDevframe()), + () => import('@devframes/plugin-og').then(m => m.createOgDevframe({ defaultUrl: 'http://localhost:5175' })), + ], + }]], + }, + app: { head: { link: [ diff --git a/docs/package.json b/docs/package.json index 970a7ff1..02e2fbf8 100644 --- a/docs/package.json +++ b/docs/package.json @@ -24,6 +24,12 @@ "shiki": "catalog:deps" }, "devDependencies": { - "@types/d3-shape": "catalog:types" + "@devframes/hub": "workspace:*", + "@devframes/hub-ui": "workspace:*", + "@devframes/nuxt": "workspace:*", + "@devframes/plugin-a11y": "workspace:*", + "@devframes/plugin-og": "workspace:*", + "@types/d3-shape": "catalog:types", + "devframe": "workspace:*" } } diff --git a/knip.jsonc b/knip.jsonc index 0a952f40..64033b2e 100644 --- a/knip.jsonc +++ b/knip.jsonc @@ -51,7 +51,11 @@ // referenced as the `@shikijs/magic-move/style.css` subpath in the // `nuxt.config.ts` `css` array; knip can't map that CSS-only subpath back // to the package, so it mis-reports the (genuinely-listed) dep as unlisted. - "ignoreDependencies": ["ai", "@ai-sdk/vue", "@comark/nuxt.*", "@nuxt/ui.*", "@shikijs/magic-move"] + // + // `@devframes/nuxt` is named as a string in the `$development.modules` + // array, and `@devframes/hub` / `@devframes/hub-ui` are its optional + // peers (the dev hub and its default dock UI), so nothing imports them. + "ignoreDependencies": ["ai", "@ai-sdk/vue", "@comark/nuxt.*", "@nuxt/ui.*", "@shikijs/magic-move", "@devframes/nuxt", "@devframes/hub", "@devframes/hub-ui"] }, "examples/custom-hub-next": { // The React client build's root sits at `src/client` (`next dev diff --git a/package.json b/package.json index cc6003d0..dab18633 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "watch": "turbo watch build --concurrency=3", "play": "tsx scripts/play.ts", "dev": "tsx scripts/play.ts", - "docs": "pnpm -C docs run docs", + "docs": "turbo run build --filter=devframe-docs^... && pnpm -C docs run docs", "docs:build": "pnpm -C docs run docs:build", "docs:serve": "pnpm -C docs run docs:serve", "storybook": "pnpm -C storybook dev", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d78240fd..5194fbd8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -740,9 +740,27 @@ importers: specifier: catalog:deps version: 4.5.0 devDependencies: + '@devframes/hub': + specifier: workspace:* + version: link:../packages/hub + '@devframes/hub-ui': + specifier: workspace:* + version: link:../packages/hub-ui + '@devframes/nuxt': + specifier: workspace:* + version: link:../packages/nuxt + '@devframes/plugin-a11y': + specifier: workspace:* + version: link:../plugins/a11y + '@devframes/plugin-og': + specifier: workspace:* + version: link:../plugins/og '@types/d3-shape': specifier: catalog:types version: 3.2.0 + devframe: + specifier: workspace:* + version: link:../packages/devframe examples/a11y-messages-playground: dependencies: