refactor(devframe): remove Vite-specific coupling#314
Merged
Conversation
- Add `getStorageDir(scope)` to `DevToolsHost`. Hosts own their app-name namespace: kit's vite-host returns `.vite/devtools/` (no behaviour change), the standalone h3 host is parameterized via a new `appName` option (defaults forwarded from `def.id`). - Repoint diagnostic `docsBase` from `devtools.vite.dev/devframe/` to `https://devfra.me/`. Updated docs / READMEs / skills to match. - Drop the dead `view.when ??= 'mode != build'` default. The client `WhenContext` never injects `mode`, so this clause never reliably hid anything; static-dump clients should filter via `ConnectionMeta.backend === 'static'` if they need to. - Document `mode: 'dev' | 'build'` semantics ("interactive vs. one-shot batch") so the names don't read as Vite-specific. - Extract `helpers/nuxt/` into a new `@devframes/nuxt` package (`devframe/packages/nuxt/`). Drops `@nuxt/kit` from devframe's peerDeps and removes the `./helpers/nuxt*` exports. - Move the `devframe` agent skill into the devframe workspace (`devframe/skills/devframe/`). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
commit: |
CI's `pnpm build` runs only tasks listed in `turbo.json`. Without the `@devframes/nuxt#build` entry the new package's `dist/` was never produced, and tsnapi snapshot tests for `@devframes/nuxt` fail with ENOENT. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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.
Description
Audit pass to make
devframemore genuinely framework-neutral ahead of its eventual extraction. No host moves out —terminals/docksare universal devtool primitives — but the Vite-flavored leaks living in devframe are cleaned up:DevToolsHost. NewgetStorageDir(scope)method on the host interface; each host owns its app-name namespace. Kit's vite-host hardcodesvite(no behaviour change — stillnode_modules/.vite/devtools/and~/.vite/devtools/); the standalone h3 host is parameterized via a newappNameoption, forwarded fromdef.idby thedev/build/mcpadapters.docsBaserepointed tohttps://devfra.me/errorsin both diagnostics modules; doc/README/skill references updated to match.view.when ??= 'mode != build'default removed. The clientWhenContextnever injectsmode, so the clause never reliably hid anything. Static-dump clients should filter remote docks viaConnectionMeta.backend === 'static'if needed.mode: 'dev' | 'build'JSDoc clarified as "interactive vs. one-shot batch" so the inherited Vite vocabulary doesn't read as Vite-specific.@devframes/nuxtextracted into a new sibling package (devframe/packages/nuxt/). devframe drops@nuxt/kitfrom peerDeps and the./helpers/nuxt*exports. Old import pathdevframe/helpers/nuxt→@devframes/nuxt.devframe/skills/devframe/so it ships with the devframe workspace.Linked Issues
Additional context
devframe/helpers/nuxtneeds to switch to@devframes/nuxt. The Nuxt module'sconfigKey: 'devframe'is unchanged.createH3DevToolsHost:appName: string. All in-tree call sites updated; downstream consumers building their own h3 host will need to add it.pnpm-lock.yamlandpackages/core/package.jsonchurn is frompnpm installafter adding the new package.🤖 Generated with Claude Code