mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-06-17 00:46:53 +08:00
* feat(rules): add vue and nuxt rule sets Add rules/vue/ and rules/nuxt/, each with the standard 5-file layout (coding-style, hooks, patterns, security, testing) that extends common/, following the Adding a New Language convention in rules/README.md. Vue rules reference the frontend-patterns and vite-patterns skills. Nuxt rules reference the nuxt4-patterns and vite-patterns skills. Content is concise (1.5 to 4 KB per file) since rules load as always-on context. * fix(rules): address PR review on vue and nuxt rule sets - nuxt/coding-style: generalize the srcDir-override note (drop project-specific 'this repo' phrasing so it is correct for any Nuxt project). - vue/hooks: add **/*.ts and **/*.tsx to paths so the lint/typecheck guidance loads when editing composables and stores. - nuxt/hooks: add **/*.vue to paths (covers pages/layouts/components) and wrap nuxi typecheck in a timeout, mirroring web/hooks.md. - nuxt/security: tighten the /security-review auto-trigger scope to external fetch, credential handling, and sensitive mutations, with examples. - nuxt/testing: correct 'Vitest-only' to note built-in Playwright E2E, and drop the @nuxt/test-utils version pin. - README: register vue and nuxt in the structure tree and install examples. Skipped: 'X specific' -> 'X-specific' hyphenation (all existing rule sets use the unhyphenated form, changing only vue/nuxt would be inconsistent); repeating the 80%/TDD mandate in nuxt/testing (already inherited from common/testing.md).
1.5 KiB
1.5 KiB
paths
| paths | ||||
|---|---|---|---|---|
|
Nuxt Hooks
This file extends common/hooks.md with Nuxt specific content.
These are Claude Code harness hooks for Nuxt work. They run via the harness, not Claude.
Typecheck
nuxi typecheckwrapsvue-tsc. Requiresvue-tsc+typescriptdev deps.- Run on
.vue/.tsedit or pre-commit. Typecheck is project-wide, so debounce it and wrap it in a timeout (mirrorweb/hooks.md, for exampletimeout 60 nuxi typecheck) so a hung type-check is reaped instead of accumulating across fast edits.
Lint
- Use the
@nuxt/eslintmodule (flat-config, project-aware, generates.nuxt/eslint.config.mjs). - Run
eslint .oreslint --fix. This is the Nuxt-official ESLint integration, prefer it over hand-rolled configs.
Format
prettier --write, or enable stylistic rules in@nuxt/eslintto avoid a Prettier/ESLint conflict.- Pick one formatting authority. Do not run both Prettier and ESLint stylistic at once.
Suggested PostToolUse chain
- On Edit to
app/**andserver/**: runeslint --fixthentimeout 60 nuxi typecheck. - Order matters: lint-fix first (mutates the file), the timed typecheck second (verifies the result). Debouncing still applies.
Reference
- ECC skills:
nuxt4-patterns,vite-patterns. - @nuxt/eslint module
- nuxi typecheck