Installation
Install @geoql/vue-doctor or @geoql/nuxt-doctor with npx, npm, or pnpm. No global install, no account, no config required.
Requirements
- Node.js 24+ — the doctor is built and tested against the active LTS line. It also runs on Node 22, but the project targets 24.
- A Vue 3 project (
compatibilityVersion: 4in Nuxt projects). The doctor does not support Vue 2 or Nuxt 3.
The doctor is opinionated. There is no compatibility shim for Vue 2 or Nuxt 3. If your project is on the older line, run the doctor on a fresh audit branch first and triage findings one rule at a time.
One-shot run
The fastest path. No install, no config, no account.
npx -y @geoql/vue-doctor
That's the whole command. The doctor auto-detects the project layout
(vue, nuxt, the app/ and server/ directories, and the usual
tooling), runs a two-pass audit, and writes a markdown report plus a
SARIF artifact to .doctor/.
Install as a project dependency
If you'd rather have a stable pinned binary in your repo — recommended for CI — install it as a dev dependency.
npm install -D @geoql/vue-doctor
pnpm add -D @geoql/vue-doctor
yarn add -D @geoql/vue-doctor
You can then run it through your package manager:
pnpm exec vue-doctor
Nuxt 4 projects
Nuxt 4 projects use @geoql/nuxt-doctor instead — the entry point is
different, but the CLI surface is identical.
npx -y @geoql/nuxt-doctor
Both packages share the same @geoql/doctor-core engine, so the report,
score, and config schema are the same.
What npx -y does
The -y flag tells npx to skip the "would you like to install this
package?" prompt. The doctor doesn't need to be installed globally —
npx -y will fetch the latest release on every run, cache it, and
discard the cache after.
Pin your version in CI. Use npx -y @geoql/vue-doctor@1 (or whatever
the current major is) so a breaking release doesn't surprise your build
matrix. Lock it further with package.json#pnpm.overrides if you need
byte-identical runs across machines.
Verify
After the first run, you should see something like:
$ npx -y @geoql/vue-doctor
doctor@0.1.0 · scanning 124 files · 0 errors, 4 warns, 12 info
.score 88.0 · grade B · 0.42s
✓ report written to .doctor/report.md
✓ sarif written to .doctor/report.sarif
If you see "no package.json found", the doctor wasn't able to detect
a project root. Run it from the directory that contains your
package.json — or pass --root <path>.