void 0.10.12 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS_TEMPLATE.md +6 -0
- package/{skills/void/docs/node_modules/void/node_modules/pglite-server/LICENSE.md → LICENSE} +1 -1
- package/README.md +34 -8
- package/dist/{auth-qgMlYp7Z.d.mts → auth-DkcFflXV.d.mts} +10 -11
- package/dist/auth-W9WII-mN.mjs +630 -0
- package/dist/{auth-cmd-BqsdZJp5.mjs → auth-cmd-CYVhSNFy.mjs} +4 -3
- package/dist/{auth-migrations-BTZ-ATvQ.mjs → auth-migrations-9vif1uj8.mjs} +53 -12
- package/dist/{better-auth-shared-BQooDxbw.mjs → better-auth-shared-CYw1T3k4.mjs} +7 -10
- package/dist/{better-auth-shared-DealXecJ.d.mts → better-auth-shared-DSCeohOK.d.mts} +10 -5
- package/dist/{build-cmd-Bujrv5q-.mjs → build-cmd-CkVD1uOh.mjs} +6 -4
- package/dist/{cache-C11V8Fxq.mjs → cache-QcUfR-ff.mjs} +9 -5
- package/dist/{cancel-deploy-fwFYF04b.mjs → cancel-deploy-DsvWKFTe.mjs} +3 -2
- package/dist/cf-access-AJ1ehiFR.mjs +42 -0
- package/dist/cf-access-DsSsZUPr.mjs +67 -0
- package/dist/cli/cli.d.mts +1 -1
- package/dist/cli/cli.mjs +1592 -153
- package/dist/cli/env-schema-probe.d.mts +48 -61
- package/dist/cli/env-schema-probe.mjs +10 -58
- package/dist/{client-Gb71-XkG.mjs → client-CyCHWSO_.mjs} +61 -463
- package/dist/cloudflare-auth-DRkGe7-s.mjs +170 -0
- package/dist/cloudflare-cmd-D3ME2GAe.mjs +62 -0
- package/dist/cloudflare-connect-BivMefMA.mjs +56 -0
- package/dist/cloudflare-operations-CPTpRW6d.mjs +566 -0
- package/dist/{config-BkTvs43g.mjs → config-BQFq7QvD.mjs} +85 -41
- package/dist/{config-CutEMNGJ.mjs → config-NOG_U1aK.mjs} +10 -15
- package/dist/connect-D9Yr-T5f.mjs +79 -0
- package/dist/{create-project-DsYvl3TB.mjs → create-project-DMV-csEm.mjs} +26 -16
- package/dist/database-provider.d.mts +21 -0
- package/dist/database-provider.mjs +6 -0
- package/dist/{db-DOiJMRt2.mjs → db-BxoUWL0F.mjs} +600 -115
- package/dist/{delete-mh6p-zkQ.mjs → delete-iJOqxBz1.mjs} +9 -6
- package/dist/{deploy-u7Rv9q_q.mjs → deploy-CcDoeBIf.mjs} +3451 -1986
- package/dist/dev-inbox-DkgRWLkW.mjs +307 -0
- package/dist/{discover-CJHyvYfR.mjs → discover-xvfrgJeo.mjs} +3 -3
- package/dist/{magic-string.es-ZQjdJFFn.mjs → dist-BR1quN_w.mjs} +570 -216
- package/dist/{dist-DaKKDf8D.mjs → dist-BrsS7cai.mjs} +17 -2
- package/dist/{dist-BuiRJkTd.mjs → dist-m40_XgNh.mjs} +48 -33
- package/dist/{domain-DiaNQbrl.mjs → domain-gu_iaHmn.mjs} +41 -4
- package/dist/dotenv-VQxupEUv.mjs +181 -0
- package/dist/edge.d.mts +2 -0
- package/dist/edge.mjs +2 -0
- package/dist/email-Ce6SQq-i.mjs +182 -0
- package/dist/email-r6DHJyAB.mjs +262 -0
- package/dist/{entry-D7yy4xVH.mjs → entry-DU3oDoQ3.mjs} +2 -2
- package/dist/env-D4Emu-M_.mjs +95 -0
- package/dist/env-DmU2To0C.mjs +73 -0
- package/dist/env-helpers-CyKtOBpj.d.mts +22 -0
- package/dist/env-public-D_6u46fX.d.mts +135 -0
- package/dist/{env-types-QBj-ndax.mjs → env-types-BNPhro-M.mjs} +2 -2
- package/dist/{env-validation-Dea3v3ej.mjs → env-validation-ENpMy6Ez.mjs} +68 -122
- package/dist/{gen-o_w-8yI8.mjs → gen-BKw6qHIg.mjs} +70 -15
- package/dist/{github-cmd-DKcGUNsj.mjs → github-cmd-DJS5Ab-H.mjs} +39 -31
- package/dist/{handler-Cjh8uM3Y.d.mts → handler-D1hLsObx.d.mts} +124 -122
- package/dist/{head-nmvOgFjd.d.mts → head-Do8P4puT.d.mts} +9 -8
- package/dist/{headers-nsHIFixA.mjs → headers-D8QfRX9Y.mjs} +12 -10
- package/dist/inbound-BJ70in1n.d.mts +354 -0
- package/dist/inbound-CNKxb3FY.mjs +694 -0
- package/dist/index.d.mts +61 -34
- package/dist/index.mjs +1048 -321
- package/dist/{init-3rgHKBVi.mjs → init-Dx5cgKqK.mjs} +329 -271
- package/dist/link-D_rm5sRH.mjs +52 -0
- package/dist/{list-CPwFDZ_c.mjs → list-M8XShti7.mjs} +37 -5
- package/dist/{runner-kapo9aPs.mjs → local-d1-BE8KBbMy.mjs} +116 -6
- package/dist/{login-BT3H8PN3.mjs → login-C8-UuLnp.mjs} +17 -15
- package/dist/{logs-Bt313ax7.mjs → logs-DwFU7dMW.mjs} +16 -2
- package/dist/mime-BJD7d_qL.mjs +1216 -0
- package/dist/neon-DHwd2zvC.mjs +54 -0
- package/dist/{node-Da0UcsGA.mjs → node-BkaXcpAc.mjs} +29 -8
- package/dist/operator-cmd-DYWRbWUA.mjs +348 -0
- package/dist/{agents-CtgBYqld.mjs → output-tFQLLj26.mjs} +676 -211
- package/dist/{package-json-Cx1osYo6.mjs → package-json-CPoWX79C.mjs} +1 -1
- package/dist/pages/client.d.mts +43 -41
- package/dist/pages/client.mjs +40 -33
- package/dist/pages/head-client.d.mts +10 -12
- package/dist/pages/head.d.mts +1 -1
- package/dist/pages/index.d.mts +37 -14
- package/dist/pages/index.mjs +5 -5
- package/dist/pages/islands-plugin.d.mts +25 -27
- package/dist/pages/islands-plugin.mjs +6 -4
- package/dist/pages/prefetch.d.mts +6 -7
- package/dist/pages/protocol.d.mts +2 -2
- package/dist/pages/protocol.mjs +2 -1
- package/dist/pages/serialize.d.mts +7 -8
- package/dist/platform-cmd-BEOVv1PN.mjs +123 -0
- package/dist/platform-domain-BszUfiS8.mjs +228 -0
- package/dist/platform-lifecycle-CjSr6xf0.mjs +4450 -0
- package/dist/platform-management-W30iCaTL.mjs +698 -0
- package/dist/platform-recovery-pHHv4ZSg.mjs +99 -0
- package/dist/{plugin-inference-DMeavIJ6.mjs → plugin-inference-BDRfZngg.mjs} +35 -19
- package/dist/prepare-BfJvFUtJ.mjs +14 -0
- package/dist/{prepare-BoKHgMNx.mjs → prepare-CBetXvsN.mjs} +15 -24
- package/dist/{preset-BjyR3lzz.mjs → preset-lAy0B0BQ.mjs} +25 -212
- package/dist/{project-cmd-D_w-4w5B.mjs → project-cmd-DCpk1cDt.mjs} +25 -12
- package/dist/{project-paths-BQd7OmIo.mjs → project-paths-SK8nMHPp.mjs} +3 -1
- package/dist/{project-tsconfig-B-QtXjLQ.mjs → project-tsconfig-Ql2XsSQp.mjs} +2 -2
- package/dist/{protocol-Bnb0LFp3.d.mts → protocol-C-pqYJjE.d.mts} +3 -4
- package/dist/{provision-rShh6MKY.mjs → provision-Blnstcm2.mjs} +78 -45
- package/dist/r2-conditions-D1Wk8i7b.mjs +30 -0
- package/dist/{requests-B8sZxaFM.mjs → requests-Dn8Vheh1.mjs} +5 -3
- package/dist/{resolve-project-BBMtLLV9.mjs → resolve-project--Vxawf7z.mjs} +2 -2
- package/dist/rollback-CtlPXEBi.mjs +166 -0
- package/dist/{rolldown-runtime-DJK8HYOj.mjs → rolldown-runtime-rQ84J-ij.mjs} +1 -1
- package/dist/{route-types-COI2DsZv.mjs → route-types-Da-DpyUp.mjs} +85 -26
- package/dist/routes-stub.d.mts +22 -23
- package/dist/runner-mysql-CgRFl3s6.mjs +61 -0
- package/dist/{runner-pg-CHM76xuC.mjs → runner-pg-DCkWPsWS.mjs} +18 -6
- package/dist/runtime/ai.d.mts +21 -14
- package/dist/runtime/ai.mjs +5 -4
- package/dist/runtime/auth-client-react.d.mts +3 -5
- package/dist/runtime/auth-client-solid.d.mts +3 -5
- package/dist/runtime/auth-client-svelte.d.mts +3 -5
- package/dist/runtime/auth-client-vue.d.mts +3 -5
- package/dist/runtime/auth-client.d.mts +3 -5
- package/dist/runtime/auth.d.mts +1 -1
- package/dist/runtime/better-auth-mysql.d.mts +10 -0
- package/dist/runtime/better-auth-mysql.mjs +49 -0
- package/dist/runtime/better-auth-pg.d.mts +8 -9
- package/dist/runtime/better-auth-pg.mjs +2 -2
- package/dist/runtime/better-auth.d.mts +8 -9
- package/dist/runtime/better-auth.mjs +2 -2
- package/dist/runtime/client-react.d.mts +1 -1
- package/dist/runtime/client-solid.d.mts +1 -1
- package/dist/runtime/client-svelte.d.mts +1 -1
- package/dist/runtime/client-vue.d.mts +1 -1
- package/dist/runtime/client.d.mts +1 -1
- package/dist/runtime/db-mysql.d.mts +2 -0
- package/dist/runtime/db-mysql.mjs +1 -0
- package/dist/runtime/db.d.mts +10 -11
- package/dist/runtime/durable.d.mts +47 -0
- package/dist/runtime/durable.mjs +146 -0
- package/dist/runtime/email/testing.d.mts +112 -0
- package/dist/runtime/email/testing.mjs +283 -0
- package/dist/runtime/email.d.mts +30 -0
- package/dist/runtime/email.mjs +573 -0
- package/dist/runtime/env-helpers.d.mts +2 -2
- package/dist/runtime/env-helpers.mjs +5 -42
- package/dist/runtime/env-public-client.d.mts +10 -11
- package/dist/runtime/env-public-client.mjs +1 -1
- package/dist/runtime/env-public.d.mts +2 -2
- package/dist/runtime/env-public.mjs +104 -49
- package/dist/runtime/env.d.mts +19 -18
- package/dist/runtime/env.mjs +15 -2
- package/dist/runtime/fetch-stream.d.mts +20 -21
- package/dist/runtime/fetch.d.mts +15 -16
- package/dist/runtime/handler.d.mts +1 -1
- package/dist/runtime/isr.d.mts +21 -22
- package/dist/runtime/isr.mjs +26 -8
- package/dist/runtime/kv.d.mts +9 -10
- package/dist/runtime/live-client.d.mts +5 -7
- package/dist/runtime/live-client.mjs +9 -7
- package/dist/runtime/live-server.d.mts +4 -5
- package/dist/runtime/live.d.mts +22 -24
- package/dist/runtime/live.mjs +1 -1
- package/dist/runtime/log.d.mts +16 -17
- package/dist/runtime/migration-handler-mysql.d.mts +4 -0
- package/dist/runtime/migration-handler-mysql.mjs +81 -0
- package/dist/runtime/migration-handler-pg.d.mts +2 -4
- package/dist/runtime/migration-handler.d.mts +5 -6
- package/dist/runtime/migration-handler.mjs +4 -3
- package/dist/runtime/queues.d.mts +3 -4
- package/dist/runtime/queues.mjs +2 -1
- package/dist/runtime/remote/binding-handler.d.mts +10 -12
- package/dist/runtime/remote/binding-handler.mjs +24 -3
- package/dist/runtime/remote/index.d.mts +5 -6
- package/dist/runtime/remote/index.mjs +21 -18
- package/dist/runtime/response.d.mts +10 -11
- package/dist/runtime/sandbox.d.mts +56 -55
- package/dist/runtime/sandbox.mjs +57 -49
- package/dist/runtime/schema-mysql.d.mts +1 -0
- package/dist/runtime/schema-mysql.mjs +2 -0
- package/dist/runtime/seed.d.mts +14 -9
- package/dist/runtime/sse-client.d.mts +6 -7
- package/dist/runtime/sse.d.mts +11 -12
- package/dist/runtime/storage.d.mts +3 -4
- package/dist/runtime/validator.d.mts +1 -1
- package/dist/runtime/ws-server.d.mts +12 -12
- package/dist/runtime/ws-server.mjs +32 -4
- package/dist/runtime/ws.d.mts +19 -21
- package/dist/{scan-DYXkrasO.mjs → scan-BMH4rzlv.mjs} +53 -31
- package/dist/{scan-DEwlM_Xy.mjs → scan-CpK-57ug.mjs} +9 -5
- package/dist/{secret-Dt32J6RI.mjs → secret-BqTxGqki.mjs} +62 -5
- package/dist/{skills-CLjN0uUO.mjs → skills-Q46GZMO-.mjs} +6 -4
- package/dist/{standard-schema-DJ0HW7QP.d.mts → standard-schema-Fo_vCAZh.d.mts} +6 -6
- package/dist/{subcommand-prompt-BzV8iQZo.mjs → subcommand-prompt-WfySCQ7S.mjs} +67 -48
- package/dist/sveltekit.d.mts +12 -11
- package/dist/sveltekit.mjs +1 -1
- package/dist/types-BAp5AEBU.d.mts +79 -0
- package/dist/types-CKWnYgfy.d.mts +1 -0
- package/dist/{validate-Cw_RLeTj.mjs → validate-Bihr8WBi.mjs} +3 -3
- package/dist/wrangler--imS8n0d.mjs +1796 -0
- package/dist/{yarn-pnp-DJn3SAHF.mjs → yarn-pnp-DxSInkzL.mjs} +1 -1
- package/package.json +79 -65
- package/schema.json +35 -3
- package/skills/migrate-vite-cloudflare-to-void/SKILL.md +1 -1
- package/skills/void/SKILL.md +59 -2
- package/skills/void/docs/guide/ai.md +32 -14
- package/skills/void/docs/guide/app-types.md +6 -6
- package/skills/void/docs/guide/auth.md +14 -16
- package/skills/void/docs/guide/database/d1.md +6 -0
- package/skills/void/docs/guide/database/mysql.md +60 -0
- package/skills/void/docs/guide/database/postgresql.md +14 -9
- package/skills/void/docs/guide/database.md +39 -26
- package/skills/void/docs/guide/deployment.md +163 -22
- package/skills/void/docs/guide/durable-state.md +140 -0
- package/skills/void/docs/guide/edge/headers.md +5 -5
- package/skills/void/docs/guide/edge/prerendering.md +2 -0
- package/skills/void/docs/guide/edge/revalidation.md +21 -6
- package/skills/void/docs/guide/edge/rewrites.md +18 -14
- package/skills/void/docs/guide/edge/static-assets.md +23 -8
- package/skills/void/docs/guide/email.md +609 -0
- package/skills/void/docs/guide/env-migration.md +109 -0
- package/skills/void/docs/guide/env-vars.md +70 -248
- package/skills/void/docs/guide/index.md +15 -17
- package/skills/void/docs/guide/jobs.md +8 -5
- package/skills/void/docs/guide/live.md +7 -15
- package/skills/void/docs/guide/pages-routing/actions-and-forms.md +8 -4
- package/skills/void/docs/guide/pages-routing/islands.md +3 -3
- package/skills/void/docs/guide/pages-routing/loaders.md +6 -4
- package/skills/void/docs/guide/pages-routing/overview.md +7 -7
- package/skills/void/docs/guide/platform-administration.md +212 -0
- package/skills/void/docs/guide/platform-development.md +235 -0
- package/skills/void/docs/guide/queues.md +10 -10
- package/skills/void/docs/guide/quickstart.md +46 -67
- package/skills/void/docs/guide/remote-dev.md +8 -6
- package/skills/void/docs/guide/sandboxes.md +33 -16
- package/skills/void/docs/guide/self-hosted-platform.md +553 -0
- package/skills/void/docs/guide/server-routing.md +25 -5
- package/skills/void/docs/guide/sse.md +4 -4
- package/skills/void/docs/guide/ssg.md +5 -3
- package/skills/void/docs/guide/storage.md +2 -2
- package/skills/void/docs/guide/websockets.md +18 -7
- package/skills/void/docs/index.md +3 -3
- package/skills/void/docs/integrations/agents.md +6 -64
- package/skills/void/docs/integrations/cloudflare.md +165 -146
- package/skills/void/docs/integrations/frameworks/analog.md +4 -4
- package/skills/void/docs/integrations/frameworks/astro.md +5 -5
- package/skills/void/docs/integrations/frameworks/nuxt.md +5 -5
- package/skills/void/docs/integrations/frameworks/overview.md +3 -3
- package/skills/void/docs/integrations/frameworks/react-router.md +3 -3
- package/skills/void/docs/integrations/frameworks/sveltekit.md +3 -3
- package/skills/void/docs/integrations/frameworks/tanstack-start.md +2 -2
- package/skills/void/docs/integrations/nodejs-bun-deno.md +11 -4
- package/skills/void/docs/reference/api.md +42 -6
- package/skills/void/docs/reference/cli.md +637 -159
- package/skills/void/docs/reference/config.md +80 -25
- package/skills/void/docs/reference/resource-inference.md +13 -9
- package/skills/void/docs/reference/structure.md +10 -11
- package/AGENT_PROMPT.md +0 -19
- package/dist/cf-access-Bqw81xAf.mjs +0 -22
- package/dist/env-CZy5MorI.mjs +0 -299
- package/dist/env-helpers-z4stu8uc.d.mts +0 -52
- package/dist/env-mask-Dd47NbR6.mjs +0 -90
- package/dist/env-public-BfiLcMBk.d.mts +0 -140
- package/dist/link-CdGHSIy-.mjs +0 -45
- package/dist/mcp-DoM3_nhd.mjs +0 -377
- package/dist/project-paths-GpziKeQQ.d.mts +0 -25
- package/dist/providers-BNKRacMr.d.mts +0 -7
- package/dist/proxy-D-3_D-Gl.mjs +0 -5
- package/dist/rollback-CkvTFXx5.mjs +0 -90
- package/dist/runtime/isr-cache.d.mts +0 -207
- package/dist/runtime/isr-cache.mjs +0 -523
- package/dist/types-lLjNE9Qp.d.mts +0 -51
- package/getting-started-prompt.txt +0 -28
- package/skills/void/command/void.md +0 -7
- package/skills/void/docs/integrations/auth-providers.md +0 -0
- package/skills/void/docs/integrations/payment-processors.md +0 -0
- package/skills/void/docs/node_modules/@iconify/vue/README.md +0 -408
- package/skills/void/docs/node_modules/@iconify/vue/offline/readme.md +0 -5
- package/skills/void/docs/node_modules/@voidzero-dev/vitepress-theme/README.md +0 -103
- package/skills/void/docs/node_modules/oxc-minify/README.md +0 -78
- package/skills/void/docs/node_modules/reka-ui/README.md +0 -80
- package/skills/void/docs/node_modules/vitepress/README.md +0 -28
- package/skills/void/docs/node_modules/vitepress/template/api-examples.md +0 -49
- package/skills/void/docs/node_modules/vitepress/template/index.md +0 -28
- package/skills/void/docs/node_modules/vitepress/template/markdown-examples.md +0 -85
- package/skills/void/docs/node_modules/vitepress-plugin-group-icons/README.md +0 -101
- package/skills/void/docs/node_modules/void/AGENT_PROMPT.md +0 -19
- package/skills/void/docs/node_modules/void/CLAUDE.md +0 -219
- package/skills/void/docs/node_modules/void/README.md +0 -90
- package/skills/void/docs/node_modules/void/node_modules/@clack/prompts/CHANGELOG.md +0 -685
- package/skills/void/docs/node_modules/void/node_modules/@clack/prompts/README.md +0 -396
- package/skills/void/docs/node_modules/void/node_modules/@cloudflare/sandbox/README.md +0 -219
- package/skills/void/docs/node_modules/void/node_modules/@cloudflare/vite-plugin/README.md +0 -37
- package/skills/void/docs/node_modules/void/node_modules/@cloudflare/workers-types/README.md +0 -135
- package/skills/void/docs/node_modules/void/node_modules/@electric-sql/pglite/README.md +0 -189
- package/skills/void/docs/node_modules/void/node_modules/@hono/oauth-providers/CHANGELOG.md +0 -143
- package/skills/void/docs/node_modules/void/node_modules/@hono/oauth-providers/README.md +0 -1272
- package/skills/void/docs/node_modules/void/node_modules/@napi-rs/keyring/README.md +0 -19
- package/skills/void/docs/node_modules/void/node_modules/@types/better-sqlite3/README.md +0 -15
- package/skills/void/docs/node_modules/void/node_modules/@types/node/README.md +0 -15
- package/skills/void/docs/node_modules/void/node_modules/@types/pg/README.md +0 -15
- package/skills/void/docs/node_modules/void/node_modules/@types/proper-lockfile/README.md +0 -51
- package/skills/void/docs/node_modules/void/node_modules/@typescript/native-preview/README.md +0 -22
- package/skills/void/docs/node_modules/void/node_modules/@typescript/native-preview/vendor/vscode-jsonrpc/README.md +0 -69
- package/skills/void/docs/node_modules/void/node_modules/@void/md/README.md +0 -153
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/@shikijs/engine-javascript/README.md +0 -9
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/@shikijs/transformers/README.md +0 -9
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/@types/node/README.md +0 -15
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/gray-matter/CHANGELOG.md +0 -24
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/gray-matter/README.md +0 -565
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-exit/README.md +0 -127
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-anchor/README.md +0 -600
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-attrs/README.md +0 -386
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-container/README.md +0 -95
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-emoji/README.md +0 -101
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-footnote/README.md +0 -135
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/pathslash/README.md +0 -64
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/shiki/README.md +0 -15
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/tinyglobby/README.md +0 -25
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/AGENTS.md +0 -16
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/README.md +0 -220
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/build.md +0 -21
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/check.md +0 -35
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/create.md +0 -70
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/fmt.md +0 -20
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/index.md +0 -35
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/lint.md +0 -26
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/pack.md +0 -17
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/run.md +0 -364
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/staged.md +0 -15
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/test.md +0 -18
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/automatic-data-tracking.md +0 -145
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/build.md +0 -40
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/cache.md +0 -107
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/check.md +0 -60
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/ci.md +0 -62
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/commit-hooks.md +0 -60
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/create.md +0 -341
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/dev.md +0 -24
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/docker.md +0 -175
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/env.md +0 -167
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/fmt.md +0 -41
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/github-actions-cache.md +0 -165
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/ide-integration.md +0 -101
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/implode.md +0 -23
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/index.md +0 -134
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/install.md +0 -199
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/lint.md +0 -50
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/migrate-rules.md +0 -347
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/migrate.md +0 -197
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/monorepo.md +0 -176
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/pack.md +0 -69
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/run.md +0 -356
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/test.md +0 -35
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/troubleshooting.md +0 -108
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/upgrade.md +0 -101
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/vpx.md +0 -66
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/why.md +0 -39
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/index.md +0 -12
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/team.md +0 -35
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/templates/generator/README.md +0 -35
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/templates/monorepo/README.md +0 -29
- package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vue/README.md +0 -58
- package/skills/void/docs/node_modules/void/node_modules/arktype/README.md +0 -165
- package/skills/void/docs/node_modules/void/node_modules/better-auth/LICENSE.md +0 -20
- package/skills/void/docs/node_modules/void/node_modules/better-auth/README.md +0 -32
- package/skills/void/docs/node_modules/void/node_modules/better-sqlite3/README.md +0 -99
- package/skills/void/docs/node_modules/void/node_modules/blake3-jit/README.md +0 -108
- package/skills/void/docs/node_modules/void/node_modules/drizzle-arktype/README.md +0 -51
- package/skills/void/docs/node_modules/void/node_modules/drizzle-kit/README.md +0 -79
- package/skills/void/docs/node_modules/void/node_modules/drizzle-orm/README.md +0 -44
- package/skills/void/docs/node_modules/void/node_modules/drizzle-valibot/README.md +0 -51
- package/skills/void/docs/node_modules/void/node_modules/drizzle-zod/README.md +0 -65
- package/skills/void/docs/node_modules/void/node_modules/es-module-lexer/README.md +0 -403
- package/skills/void/docs/node_modules/void/node_modules/estree-walker/README.md +0 -48
- package/skills/void/docs/node_modules/void/node_modules/hono/README.md +0 -85
- package/skills/void/docs/node_modules/void/node_modules/ignore/README.md +0 -452
- package/skills/void/docs/node_modules/void/node_modules/jsonc-parser/CHANGELOG.md +0 -76
- package/skills/void/docs/node_modules/void/node_modules/jsonc-parser/LICENSE.md +0 -21
- package/skills/void/docs/node_modules/void/node_modules/jsonc-parser/README.md +0 -364
- package/skills/void/docs/node_modules/void/node_modules/jsonc-parser/SECURITY.md +0 -41
- package/skills/void/docs/node_modules/void/node_modules/magic-string/README.md +0 -325
- package/skills/void/docs/node_modules/void/node_modules/ofetch/README.md +0 -398
- package/skills/void/docs/node_modules/void/node_modules/pathslash/README.md +0 -64
- package/skills/void/docs/node_modules/void/node_modules/pg/README.md +0 -96
- package/skills/void/docs/node_modules/void/node_modules/pglite-server/README.md +0 -135
- package/skills/void/docs/node_modules/void/node_modules/picocolors/README.md +0 -21
- package/skills/void/docs/node_modules/void/node_modules/proper-lockfile/CHANGELOG.md +0 -108
- package/skills/void/docs/node_modules/void/node_modules/proper-lockfile/README.md +0 -183
- package/skills/void/docs/node_modules/void/node_modules/tinyglobby/README.md +0 -25
- package/skills/void/docs/node_modules/void/node_modules/valibot/LICENSE.md +0 -9
- package/skills/void/docs/node_modules/void/node_modules/valibot/README.md +0 -94
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/AGENTS.md +0 -16
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/README.md +0 -220
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/build.md +0 -21
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/check.md +0 -35
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/create.md +0 -70
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/fmt.md +0 -20
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/index.md +0 -35
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/lint.md +0 -26
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/pack.md +0 -17
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/run.md +0 -364
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/staged.md +0 -15
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/test.md +0 -18
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/automatic-data-tracking.md +0 -145
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/build.md +0 -40
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/cache.md +0 -107
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/check.md +0 -60
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/ci.md +0 -62
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/commit-hooks.md +0 -60
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/create.md +0 -341
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/dev.md +0 -24
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/docker.md +0 -175
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/env.md +0 -167
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/fmt.md +0 -41
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/github-actions-cache.md +0 -165
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/ide-integration.md +0 -101
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/implode.md +0 -23
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/index.md +0 -134
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/install.md +0 -199
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/lint.md +0 -50
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/migrate-rules.md +0 -347
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/migrate.md +0 -197
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/monorepo.md +0 -176
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/pack.md +0 -69
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/run.md +0 -356
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/test.md +0 -35
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/troubleshooting.md +0 -108
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/upgrade.md +0 -101
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/vpx.md +0 -66
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/why.md +0 -39
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/index.md +0 -12
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/team.md +0 -35
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/templates/generator/README.md +0 -35
- package/skills/void/docs/node_modules/void/node_modules/vite-plus/templates/monorepo/README.md +0 -29
- package/skills/void/docs/node_modules/void/node_modules/wrangler/README.md +0 -63
- package/skills/void/docs/node_modules/void/node_modules/zod/README.md +0 -191
- package/skills/void/docs/node_modules/void/skills/migrate-vite-cloudflare-to-void/SKILL.md +0 -175
- package/skills/void/docs/node_modules/void/skills/void/SKILL.md +0 -76
- package/skills/void/docs/node_modules/void/skills/void/command/void.md +0 -7
- package/skills/void/docs/node_modules/void/test/e2e/README.md +0 -85
|
@@ -1,347 +0,0 @@
|
|
|
1
|
-
# Migration Rules
|
|
2
|
-
|
|
3
|
-
This reference describes exactly what `vp migrate` does to a project: how it
|
|
4
|
-
updates dependencies, rewrites source imports and package scripts, and adjusts
|
|
5
|
-
package-manager configuration. See the [migration guide](./migrate.md) for the
|
|
6
|
-
command overview and workflow.
|
|
7
|
-
|
|
8
|
-
Except for [Before You Migrate](#before-you-migrate), which lists steps you
|
|
9
|
-
take yourself, everything below describes automatic behavior.
|
|
10
|
-
|
|
11
|
-
## Before You Migrate
|
|
12
|
-
|
|
13
|
-
1. Run `vp upgrade` so the global CLI has the latest migration rules. A stale
|
|
14
|
-
local `vite-plus` is not a blocker: when the project's local copy is older,
|
|
15
|
-
migration delegates to the global CLI.
|
|
16
|
-
2. Upgrade the project to Vite 8+ and Vitest 4.1+ when necessary.
|
|
17
|
-
3. Run `vp migrate` from the workspace root. Use `--no-interactive` in
|
|
18
|
-
automated environments.
|
|
19
|
-
4. Review every changed manifest, package-manager config, source rewrite, and
|
|
20
|
-
generated lockfile.
|
|
21
|
-
5. Validate with `vp install`, `vp check`, `vp test`, and `vp build`.
|
|
22
|
-
|
|
23
|
-
Migration is idempotent: running it again after a successful migration should
|
|
24
|
-
not produce another diff.
|
|
25
|
-
|
|
26
|
-
## Upgrade vs. Full Setup
|
|
27
|
-
|
|
28
|
-
On a project that already depends on `vite-plus`, `vp migrate` performs an
|
|
29
|
-
upgrade only: it updates dependencies and package-manager configuration and
|
|
30
|
-
finalizes imports. It does not touch project setup.
|
|
31
|
-
|
|
32
|
-
- `--full` also runs the setup actions: git hooks, editor config, agent files,
|
|
33
|
-
ESLint and Prettier migration, framework shims, the tsconfig `baseUrl` fix,
|
|
34
|
-
and the `.nvmrc`/Volta to `.node-version` conversion.
|
|
35
|
-
- `--hooks`, `--agent`, and `--editor` opt into a single setup action without
|
|
36
|
-
`--full`.
|
|
37
|
-
|
|
38
|
-
When a default upgrade skips setup actions that would apply, it prints a hint
|
|
39
|
-
to run `vp migrate --full`. Fresh (non Vite+) projects always run the full
|
|
40
|
-
migration.
|
|
41
|
-
|
|
42
|
-
## Dependency Rules
|
|
43
|
-
|
|
44
|
-
What happens to each toolchain dependency, at a glance:
|
|
45
|
-
|
|
46
|
-
| Dependency | What happens |
|
|
47
|
-
| ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
48
|
-
| `vite-plus` | Added where the package is migrated; plain ranges re-pinned to the concrete target, directly or through a catalog. |
|
|
49
|
-
| `vite` | Existing declarations kept and pointed at the core alias. Under pnpm, added as a direct dev dependency wherever needed (see [Vite and Overrides](#vite-and-overrides)). |
|
|
50
|
-
| `vitest` | Removed in the common node-mode case because `vite-plus` provides it transitively. Kept or added only when [directly required](#when-vitest-is-directly-required). |
|
|
51
|
-
| `@vitest/*` | Directly installed lockstep packages aligned to the bundled Vitest version (see [Vitest Ecosystem Packages](#vitest-ecosystem-packages)). |
|
|
52
|
-
| `@voidzero-dev/vite-plus-test` | Removed everywhere: dependencies, overrides, resolutions, and catalog aliases. Imports are rewritten to the current `vite-plus/test*` surface. |
|
|
53
|
-
|
|
54
|
-
### Version Selection
|
|
55
|
-
|
|
56
|
-
- `vite-plus` is pinned to the concrete version of the CLI running the
|
|
57
|
-
migration, never the `latest` dist-tag.
|
|
58
|
-
- The `vite` alias targets `@voidzero-dev/vite-plus-core` from the same Vite+
|
|
59
|
-
release.
|
|
60
|
-
- A catalog-backed manifest may contain `catalog:` or a named catalog
|
|
61
|
-
reference. Migration keeps the reference and updates the referenced catalog
|
|
62
|
-
value to the concrete toolchain target.
|
|
63
|
-
- Deliberate protocol pins are preserved: `workspace:`, `file:`, `link:`,
|
|
64
|
-
`npm:`, `github:`, Git URLs, and HTTP URLs.
|
|
65
|
-
- Migration reconciles every workspace package, not only the root manifest.
|
|
66
|
-
Shared overrides and catalogs stay at the workspace root; dependencies that
|
|
67
|
-
provide a peer belong in each package that needs them.
|
|
68
|
-
|
|
69
|
-
### Vite and Overrides
|
|
70
|
-
|
|
71
|
-
Package-manager overrides do not create dependency edges by themselves. Under
|
|
72
|
-
pnpm, a package that lists `vite-plus` in `dependencies` or `devDependencies`
|
|
73
|
-
but has no `vite` entry anywhere (`dependencies`, `devDependencies`,
|
|
74
|
-
`optionalDependencies`, or `peerDependencies`) lets pnpm auto-install upstream
|
|
75
|
-
Vite to satisfy Vitest's required `vite` peer, splitting the project across
|
|
76
|
-
separate Vite+, Vite, and Vitest instances. To prevent this, `vp migrate` adds
|
|
77
|
-
the missing `vite` entry to `devDependencies` of every such package; the
|
|
78
|
-
workspace override then redirects it to Vite+ core.
|
|
79
|
-
|
|
80
|
-
Related rules:
|
|
81
|
-
|
|
82
|
-
- A direct `vite` declaration is never removed merely because a root override
|
|
83
|
-
exists.
|
|
84
|
-
- Plain or stale aliases are normalized; named catalog references are kept.
|
|
85
|
-
- The direct-entry rule above is pnpm-specific. Bun mirrors its core alias as
|
|
86
|
-
a direct dependency for its peer resolver, and npm browser-provider layouts
|
|
87
|
-
may need a top-level `vite` edge so nested Vitest packages can resolve
|
|
88
|
-
`vite`.
|
|
89
|
-
|
|
90
|
-
### When Vitest Is Directly Required
|
|
91
|
-
|
|
92
|
-
Migration keeps or adds a package-local `vitest` at the exact bundled version
|
|
93
|
-
when any of the following is true:
|
|
94
|
-
|
|
95
|
-
- an installed dependency has a non-optional `vitest` peer, whether exact or a
|
|
96
|
-
range;
|
|
97
|
-
- the package uses Vitest browser mode or an opt-in browser provider;
|
|
98
|
-
- source or TypeScript configuration retains an upstream `vitest` reference;
|
|
99
|
-
- the package declares `@nuxt/test-utils`; or
|
|
100
|
-
- dependency metadata is unavailable and an existing direct `vitest` might be
|
|
101
|
-
satisfying an unknown required peer.
|
|
102
|
-
|
|
103
|
-
Detection reads installed peer metadata, so integrations such as
|
|
104
|
-
`vite-plugin-gherkin` are handled even though their names do not contain
|
|
105
|
-
`vitest`.
|
|
106
|
-
|
|
107
|
-
When a package qualifies, migration:
|
|
108
|
-
|
|
109
|
-
- adds `vitest` to that package, not indiscriminately to every workspace
|
|
110
|
-
package;
|
|
111
|
-
- uses the existing catalog reference when supported, otherwise the exact
|
|
112
|
-
bundled version; and
|
|
113
|
-
- keeps a matching workspace override or resolution so the graph resolves a
|
|
114
|
-
single Vitest version.
|
|
115
|
-
|
|
116
|
-
A peer declaration alone does not install Vitest. If a surviving
|
|
117
|
-
`peerDependencies.vitest` uses a catalog entry that migration will remove, it
|
|
118
|
-
is resolved to the public peer range first.
|
|
119
|
-
|
|
120
|
-
### Vitest Ecosystem Packages
|
|
121
|
-
|
|
122
|
-
Official current `@vitest/*` packages generally publish in lockstep with
|
|
123
|
-
Vitest. Migration aligns the ones the project directly installs, including
|
|
124
|
-
`@vitest/coverage-v8`, `@vitest/coverage-istanbul`, `@vitest/ui`, and
|
|
125
|
-
`@vitest/web-worker`:
|
|
126
|
-
|
|
127
|
-
- when the package manager supports catalogs, they are referenced through the
|
|
128
|
-
toolchain catalog: an existing `catalog:` / `catalog:<name>` reference is
|
|
129
|
-
preserved, a catalog entry is added for any package that lacks one, and each
|
|
130
|
-
entry is updated to the bundled Vitest version;
|
|
131
|
-
- when catalogs are unsupported (npm, a standalone bun project, or a
|
|
132
|
-
pre-catalog pnpm/Yarn), the concrete bundled version is written instead.
|
|
133
|
-
|
|
134
|
-
Packages that are **not** aligned:
|
|
135
|
-
|
|
136
|
-
- `@vitest/eslint-plugin` follows its own version line;
|
|
137
|
-
- `@vitest/coverage-c8` stopped at an older release and has no Vitest 4
|
|
138
|
-
version; and
|
|
139
|
-
- third-party `vitest-*` integrations keep their own compatible versions,
|
|
140
|
-
though their required Vitest peer may still trigger
|
|
141
|
-
[direct provisioning](#when-vitest-is-directly-required).
|
|
142
|
-
|
|
143
|
-
For browser mode, the base `@vitest/browser` runtime and
|
|
144
|
-
`@vitest/browser-preview` are bundled by Vite+ and are removed as direct
|
|
145
|
-
dependencies. The Playwright and WebdriverIO providers stay opt-in: a kept or
|
|
146
|
-
injected provider is referenced through the preferred toolchain catalog at the
|
|
147
|
-
bundled Vitest version (or written concretely when catalogs are unsupported),
|
|
148
|
-
and its `playwright` or `webdriverio` peer is installed alongside.
|
|
149
|
-
|
|
150
|
-
Providers are detected before imports are rewritten. This covers legacy
|
|
151
|
-
projects that aliased `vitest` to `@voidzero-dev/vite-plus-test` and import
|
|
152
|
-
from `vitest/browser-<provider>`, `vitest/browser/providers/<provider>`, or
|
|
153
|
-
`vitest/plugins/browser-<provider>`: those imports still install the
|
|
154
|
-
corresponding `@vitest/browser-playwright` or `@vitest/browser-webdriverio`
|
|
155
|
-
dependency and its framework peer.
|
|
156
|
-
|
|
157
|
-
Object-valued nested npm and Bun overrides are preserved: they are
|
|
158
|
-
user-defined scopes rather than scalar version pins.
|
|
159
|
-
|
|
160
|
-
## Source Rewrite Rules
|
|
161
|
-
|
|
162
|
-
### `vite` Imports
|
|
163
|
-
|
|
164
|
-
`vite` and `vite/*` imports are rewritten to `vite-plus` **only in config
|
|
165
|
-
entry files**: `vite.config.*`, `vitest.config.*`, and any config file the
|
|
166
|
-
migration resolved. Every other file keeps its `vite` imports, for two
|
|
167
|
-
reasons:
|
|
168
|
-
|
|
169
|
-
- `vite-plus` is not a guaranteed superset of Vite's exposed surface. It owns
|
|
170
|
-
only `defineConfig`, `defineProject`, and `lazyPlugins`, so rewriting a
|
|
171
|
-
pass-through symbol such as `createBuilder` or `loadConfigFromFile`
|
|
172
|
-
(including in `typeof import('vite')` type positions) can break.
|
|
173
|
-
- An unrewritten `vite` import still resolves through the
|
|
174
|
-
`@voidzero-dev/vite-plus-core` alias in a Vite+ project.
|
|
175
|
-
|
|
176
|
-
Plugin packages (an unscoped name starting with `vite-plugin-` or
|
|
177
|
-
`unplugin-`, or `vite` in `peerDependencies`/`dependencies`) skip the rewrite
|
|
178
|
-
even in config files. Only the `vite` specifier is in scope for this rule.
|
|
179
|
-
|
|
180
|
-
`declare module 'vite'` augmentations follow the same rule and are preserved
|
|
181
|
-
outside config files. Through the core alias they reach the same
|
|
182
|
-
`@voidzero-dev/vite-plus-core` module whose `UserConfig` types `defineConfig`
|
|
183
|
-
from `vite-plus`, so they keep working after migration; `vite-plus` itself
|
|
184
|
-
exports no `UserConfig` symbol, so a rewritten `declare module 'vite-plus'`
|
|
185
|
-
augmentation would merge with nothing. Extensions aimed at `vite-plus`'s own
|
|
186
|
-
surface are written against `vite-plus` by hand.
|
|
187
|
-
|
|
188
|
-
### `vitest` and Browser Imports
|
|
189
|
-
|
|
190
|
-
- Ordinary `vitest` and `vitest/*` imports are rewritten to
|
|
191
|
-
`vite-plus/test*`.
|
|
192
|
-
- Legacy Playwright and WebdriverIO provider imports are detected before this
|
|
193
|
-
rewrite so their optional provider dependencies are not lost.
|
|
194
|
-
- Scoped `@vitest/browser*` imports are rewritten to the corresponding
|
|
195
|
-
`vite-plus/test/browser*` exports, provisioning opt-in providers when
|
|
196
|
-
needed.
|
|
197
|
-
- Existing `vite-plus/test*` imports are left unchanged.
|
|
198
|
-
|
|
199
|
-
### What Is Never Rewritten
|
|
200
|
-
|
|
201
|
-
- `declare module 'vitest'` and `declare module '@vitest/browser*'`: module
|
|
202
|
-
augmentation must retain the upstream module identity.
|
|
203
|
-
- References that stay behind, such as `compilerOptions.types`,
|
|
204
|
-
`require.resolve`, `import.meta.resolve`, and `vitest/package.json`,
|
|
205
|
-
require package-local Vitest (see
|
|
206
|
-
[When Vitest Is Directly Required](#when-vitest-is-directly-required)).
|
|
207
|
-
- In a package that declares `@nuxt/test-utils`, every `vitest` and
|
|
208
|
-
`vitest/*` module specifier is preserved package-wide: the Nuxt transform
|
|
209
|
-
requires the upstream identity and can otherwise inject a duplicate `vi`
|
|
210
|
-
import. This exception does not apply to sibling packages or to scoped
|
|
211
|
-
`@vitest/browser*` imports.
|
|
212
|
-
|
|
213
|
-
The `prefer-vite-plus-imports` lint rule follows the same Nuxt exception, so
|
|
214
|
-
lint autofix preserves these imports too.
|
|
215
|
-
|
|
216
|
-
## Package Script Rewrite Rules
|
|
217
|
-
|
|
218
|
-
Migration rewrites commands provided by the Vite+ toolchain in `package.json`
|
|
219
|
-
scripts while preserving their arguments:
|
|
220
|
-
|
|
221
|
-
| Before | After |
|
|
222
|
-
| ------------- | ------------------------------------------- |
|
|
223
|
-
| `vite` | `vp dev`, or the matching `vp` subcommand |
|
|
224
|
-
| `vitest` | `vp test` |
|
|
225
|
-
| `oxlint` | `vp lint` |
|
|
226
|
-
| `oxfmt` | `vp fmt` |
|
|
227
|
-
| `tsdown` | `vp pack` |
|
|
228
|
-
| `lint-staged` | `vp staged` |
|
|
229
|
-
| `eslint` | `vp lint`, when its optional migration runs |
|
|
230
|
-
| `prettier` | `vp fmt`, when its optional migration runs |
|
|
231
|
-
|
|
232
|
-
For commands launched through `bunx`, migration preserves `bunx` and its
|
|
233
|
-
`--bun` flag (keeping the user's chosen runtime) and rewrites only the managed
|
|
234
|
-
command. This also works when `bunx` follows a command-launcher delimiter such
|
|
235
|
-
as `run` or `--`:
|
|
236
|
-
|
|
237
|
-
| Before | After |
|
|
238
|
-
| ------------------------------------------------------- | -------------------------------------------------------- |
|
|
239
|
-
| `bunx --bun vite build` | `bunx --bun vp build` |
|
|
240
|
-
| `bunx --bun vitest run` | `bunx --bun vp test run` |
|
|
241
|
-
| `portless --tailscale run bunx --bun vite` | `portless --tailscale run bunx --bun vp dev` |
|
|
242
|
-
| `dotenv -e .env.test -- bunx --bun oxlint --type-aware` | `dotenv -e .env.test -- bunx --bun vp lint --type-aware` |
|
|
243
|
-
|
|
244
|
-
Unrelated `bunx` commands and other package-executor forms remain unchanged.
|
|
245
|
-
|
|
246
|
-
## Node.js Version Rules
|
|
247
|
-
|
|
248
|
-
Migration converts legacy Node.js version-manager files to `.node-version`,
|
|
249
|
-
the format Vite+ reads. On an existing Vite+ project this conversion is part
|
|
250
|
-
of the full setup bucket, so it runs with `vp migrate --full`; fresh
|
|
251
|
-
migrations run it unconditionally.
|
|
252
|
-
|
|
253
|
-
- `.nvmrc` and Volta `volta.node` pins are converted to `.node-version`. An
|
|
254
|
-
existing `.node-version` is kept.
|
|
255
|
-
- When `.nvmrc` is removed, any `actions/setup-node` `node-version-file:
|
|
256
|
-
.nvmrc` reference in `.github/workflows/*.{yml,yaml}` and composite actions
|
|
257
|
-
(`.github/actions/**/action.{yml,yaml}`) is repointed to `.node-version` so
|
|
258
|
-
CI does not fail with "node version file ... does not exist".
|
|
259
|
-
|
|
260
|
-
## Package-Manager Rules
|
|
261
|
-
|
|
262
|
-
### pnpm
|
|
263
|
-
|
|
264
|
-
**Root settings location.** pnpm 10.6.2+ uses `pnpm-workspace.yaml` as the
|
|
265
|
-
single source for supported root settings. Migration moves recognized
|
|
266
|
-
`package.json#pnpm` fields there, including overrides, peer rules, patch
|
|
267
|
-
settings, package extensions, architecture and build policy, audit/update
|
|
268
|
-
configuration, and configuration dependencies. It removes the `pnpm` object
|
|
269
|
-
when it becomes empty and preserves unknown keys that may belong to other
|
|
270
|
-
tooling.
|
|
271
|
-
|
|
272
|
-
- When both files define the same migrated setting, object entries are merged
|
|
273
|
-
recursively and unique array entries are retained. Values from
|
|
274
|
-
`package.json#pnpm` win at conflicting scalar leaves, while workspace-only
|
|
275
|
-
sibling entries are preserved.
|
|
276
|
-
- Before pnpm 10.6.2, these settings stay in `package.json#pnpm`. (Workspace
|
|
277
|
-
settings support arrived incrementally: 10.5.0 in general, 10.5.1 for
|
|
278
|
-
overrides, 10.6.2 for `peerDependencyRules`. pnpm 11 no longer reads the
|
|
279
|
-
legacy `package.json` settings.)
|
|
280
|
-
|
|
281
|
-
**Catalogs.** Catalogs are a separate feature, supported from pnpm 9.5.0,
|
|
282
|
-
independent of the settings boundary above. Even below 10.6.2, where
|
|
283
|
-
overrides stay in `package.json#pnpm`, migration still rewrites the workspace
|
|
284
|
-
catalog off stale wrapper aliases and keeps `catalog:` overrides as
|
|
285
|
-
references rather than inlining them to concrete versions.
|
|
286
|
-
|
|
287
|
-
- Dependency references, default and named catalogs, overrides, and
|
|
288
|
-
`peerDependencyRules` are kept consistent with each other.
|
|
289
|
-
- pnpm accepts the logical default catalog as either top-level `catalog` or
|
|
290
|
-
`catalogs.default`, but not both. Migration preserves the existing form and
|
|
291
|
-
never creates the other form beside it.
|
|
292
|
-
- When an existing named catalog already owns `vite-plus`, `vite`, or
|
|
293
|
-
`vitest`, migration reuses that managed toolchain catalog for newly added
|
|
294
|
-
dependencies and overrides. It creates a top-level default catalog only
|
|
295
|
-
when no managed or default catalog can be reused.
|
|
296
|
-
|
|
297
|
-
**Other rules.**
|
|
298
|
-
|
|
299
|
-
- Each package that declares `vite-plus` also gets a direct `vite` dev
|
|
300
|
-
dependency (see [Vite and Overrides](#vite-and-overrides)).
|
|
301
|
-
- Unrelated selector-shaped and object-valued overrides are preserved.
|
|
302
|
-
|
|
303
|
-
### npm
|
|
304
|
-
|
|
305
|
-
- Direct aliases are normalized before the matching override is added, so npm
|
|
306
|
-
does not fail with `EOVERRIDE`.
|
|
307
|
-
- When a real Vite installation changes to the core alias, stale Vite install
|
|
308
|
-
and lockfile state is removed before reinstalling.
|
|
309
|
-
- Opt-in browser-provider layouts get a top-level `vite` edge when nested
|
|
310
|
-
Vitest packages otherwise cannot resolve it.
|
|
311
|
-
|
|
312
|
-
### Yarn
|
|
313
|
-
|
|
314
|
-
- Vite+ does not support Plug'n'Play. Migration detects explicit and implicit
|
|
315
|
-
PnP and converts the project to `nodeLinker: node-modules`, preserving all
|
|
316
|
-
unrelated `.yarnrc.yml` settings. `--no-interactive` accepts the
|
|
317
|
-
conversion; a process-level `YARN_NODE_LINKER=pnp` must be fixed by the
|
|
318
|
-
caller.
|
|
319
|
-
- Catalog references and user hoisting settings are preserved.
|
|
320
|
-
- Migration avoids split Vitest copies under workspace hoisting isolation: it
|
|
321
|
-
applies a package-level fix where possible and warns when the isolation
|
|
322
|
-
cannot be changed safely.
|
|
323
|
-
|
|
324
|
-
### Bun
|
|
325
|
-
|
|
326
|
-
- Bun catalogs only resolve inside a workspace (a root `package.json` with a
|
|
327
|
-
non-empty `workspaces`). In a bun workspace, existing top-level or
|
|
328
|
-
workspace catalog locations and named catalog references are preserved. A
|
|
329
|
-
standalone (single-package) bun project keeps concrete specs and gets no
|
|
330
|
-
catalog field, because `bun install` cannot resolve `catalog:` outside a
|
|
331
|
-
workspace.
|
|
332
|
-
- The core alias is mirrored as a direct `vite` dependency so Bun sees the
|
|
333
|
-
peer provider before applying overrides.
|
|
334
|
-
|
|
335
|
-
## After the Migration
|
|
336
|
-
|
|
337
|
-
- Each Vite config is inspected for Rolldown-incompatible patterns (such as
|
|
338
|
-
`manualChunks`). Anything found is reported as a warning; the config is not
|
|
339
|
-
changed.
|
|
340
|
-
- Dependencies are reinstalled once to refresh the lockfile. If installation
|
|
341
|
-
fails, migration reports the error and exits with a nonzero status.
|
|
342
|
-
- After a successful migration, `vp fmt` runs on the files changed during
|
|
343
|
-
migration, excluding paths that were already dirty in the Git worktree.
|
|
344
|
-
Oxfmt selects the supported formats; non-Git projects retain full-project
|
|
345
|
-
formatting. Formatting is skipped while the project still uses Prettier. A
|
|
346
|
-
formatter failure is reported as a warning so the migration result and the
|
|
347
|
-
manual formatting command remain available.
|
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
# Migrate to Vite+
|
|
2
|
-
|
|
3
|
-
`vp migrate` helps move existing projects onto Vite+.
|
|
4
|
-
|
|
5
|
-
## Overview
|
|
6
|
-
|
|
7
|
-
This command is the starting point for consolidating separate Vite, Vitest, Oxlint, Oxfmt, ESLint, and Prettier setups into Vite+.
|
|
8
|
-
|
|
9
|
-
Use it when you want to take an existing project and move it onto the Vite+ defaults instead of wiring each tool by hand.
|
|
10
|
-
|
|
11
|
-
## Usage
|
|
12
|
-
|
|
13
|
-
```bash
|
|
14
|
-
vp migrate
|
|
15
|
-
vp migrate <path>
|
|
16
|
-
vp migrate --no-interactive
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
## Target Path
|
|
20
|
-
|
|
21
|
-
The positional `PATH` argument is optional.
|
|
22
|
-
|
|
23
|
-
- If omitted, `vp migrate` migrates the current directory
|
|
24
|
-
- If provided, it migrates that target directory instead
|
|
25
|
-
|
|
26
|
-
```bash
|
|
27
|
-
vp migrate
|
|
28
|
-
vp migrate my-app
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
## Options
|
|
32
|
-
|
|
33
|
-
- `--agent <name>` writes agent instructions into the project
|
|
34
|
-
- `--no-agent` skips agent instruction setup
|
|
35
|
-
- `--editor <name>` writes editor config files into the project
|
|
36
|
-
- `--no-editor` skips editor config setup
|
|
37
|
-
- `--hooks` sets up pre-commit hooks
|
|
38
|
-
- `--no-hooks` skips hook setup
|
|
39
|
-
- `--no-interactive` runs the migration without prompts
|
|
40
|
-
|
|
41
|
-
## Migration Flow
|
|
42
|
-
|
|
43
|
-
The `migrate` command is designed to move existing projects onto Vite+ quickly. Here is what the command does:
|
|
44
|
-
|
|
45
|
-
- Updates project dependencies
|
|
46
|
-
- Rewrites imports where needed
|
|
47
|
-
- Merges tool-specific config into `vite.config.ts`
|
|
48
|
-
- Updates scripts to the Vite+ command surface
|
|
49
|
-
- Can set up commit hooks
|
|
50
|
-
- Can write agent and editor configuration files
|
|
51
|
-
- Formats the migrated project
|
|
52
|
-
|
|
53
|
-
See [Migration Rules](./migrate-rules.md) for the exact dependency, source
|
|
54
|
-
rewrite, and package-manager behavior.
|
|
55
|
-
|
|
56
|
-
Most projects will require further manual adjustments after running `vp migrate`.
|
|
57
|
-
|
|
58
|
-
## Recommended Workflow
|
|
59
|
-
|
|
60
|
-
Before running the migration:
|
|
61
|
-
|
|
62
|
-
- Upgrade to Vite 8+ and Vitest 4.1+ first
|
|
63
|
-
- Make sure you understand any existing lint, format, or test setup that should be preserved
|
|
64
|
-
|
|
65
|
-
After running the migration:
|
|
66
|
-
|
|
67
|
-
- Run `vp install`
|
|
68
|
-
- Run `vp check`
|
|
69
|
-
- Run `vp test`
|
|
70
|
-
- Run `vp build`
|
|
71
|
-
|
|
72
|
-
## Migration Prompt
|
|
73
|
-
|
|
74
|
-
If you want to hand this work to a coding agent (or the reader is a coding agent!), use this migration prompt:
|
|
75
|
-
|
|
76
|
-
```md
|
|
77
|
-
Migrate this project to Vite+. Vite+ replaces the current split tooling around runtime management, package management, dev/build/test commands, linting, formatting, and packaging. Run `vp help` to understand Vite+ capabilities and `vp help migrate` before making changes. Use `vp migrate --no-interactive` in the workspace root. Make sure the project is using Vite 8+ and Vitest 4.1+ before migrating.
|
|
78
|
-
|
|
79
|
-
After the migration:
|
|
80
|
-
|
|
81
|
-
- Confirm `vite` imports were rewritten to `vite-plus` where needed
|
|
82
|
-
- Confirm `vitest` imports were rewritten to `vite-plus/test` (and `@vitest/browser*` to `vite-plus/test/browser*`) where needed
|
|
83
|
-
- Remove old `vite`, `vitest`, and `@vitest/browser*` dependencies only after those rewrites are confirmed — `vite-plus` ships them as direct deps
|
|
84
|
-
- Move remaining tool-specific config into the appropriate blocks in `vite.config.ts`
|
|
85
|
-
|
|
86
|
-
Command mapping to keep in mind:
|
|
87
|
-
|
|
88
|
-
- `vp run <script>` is the equivalent of `pnpm run <script>`
|
|
89
|
-
- `vp test` runs the built-in test command, while `vp run test` runs the `test` script from `package.json`
|
|
90
|
-
- `vp install`, `vp add`, and `vp remove` delegate through the package manager declared by `packageManager`
|
|
91
|
-
- `vp dev`, `vp build`, `vp preview`, `vp lint`, `vp fmt`, `vp check`, and `vp pack` replace the corresponding standalone tools
|
|
92
|
-
- Prefer `vp check` for validation loops
|
|
93
|
-
|
|
94
|
-
Finally, verify the migration by running: `vp install`, `vp check`, `vp test`, and `vp build`
|
|
95
|
-
|
|
96
|
-
Summarize the migration at the end and report any manual follow-up still required.
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
## Tool-Specific Migrations
|
|
100
|
-
|
|
101
|
-
### Vitest
|
|
102
|
-
|
|
103
|
-
Vitest is automatically migrated through `vp migrate`. `vite-plus` re-exports upstream `vitest@4.x` under `vite-plus/test*`, so for node-mode tests a single `vite-plus` install is enough — you no longer need to install `vitest` directly.
|
|
104
|
-
|
|
105
|
-
Browser mode is more nuanced. `vite-plus` bundles the base browser runtime (`@vitest/browser`) and the preview provider (`@vitest/browser-preview`), but the **Playwright** and **WebdriverIO** providers stay opt-in: `@vitest/browser-playwright` (with its `playwright` peer) and `@vitest/browser-webdriverio` (with its `webdriverio` peer) are **not** shipped with `vite-plus`, so non-browser projects never pull them in. `vp migrate` detects the provider you actually use and adds it — pinned to the bundled vitest version — together with its framework. If you migrate manually and use one of these providers, install the provider package and its framework yourself so `vite-plus/test/browser-playwright` / `vite-plus/test/browser-webdriverio` can resolve.
|
|
106
|
-
|
|
107
|
-
If you are migrating manually, update all the imports to `vite-plus/test*` instead:
|
|
108
|
-
|
|
109
|
-
```ts
|
|
110
|
-
// before
|
|
111
|
-
import { defineConfig } from 'vitest/config';
|
|
112
|
-
import { describe, expect, it, vi } from 'vitest';
|
|
113
|
-
import { playwright } from '@vitest/browser-playwright';
|
|
114
|
-
|
|
115
|
-
const { page } = await import('@vitest/browser/context');
|
|
116
|
-
|
|
117
|
-
// after
|
|
118
|
-
import { defineConfig } from 'vite-plus';
|
|
119
|
-
import { describe, expect, it, vi } from 'vite-plus/test';
|
|
120
|
-
import { playwright } from 'vite-plus/test/browser-playwright';
|
|
121
|
-
|
|
122
|
-
const { page } = await import('vite-plus/test/browser/context');
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
`declare module 'vitest'` / `declare module '@vitest/browser*'` augmentations are intentionally **not** rewritten — `vite-plus/test*` is a thin re-export of upstream `vitest*`, so type augmentations have to target the upstream module identity to merge correctly. Leave those `declare module` statements pointing at `'vitest'` / `'@vitest/browser*'`.
|
|
126
|
-
|
|
127
|
-
### tsdown
|
|
128
|
-
|
|
129
|
-
If your project uses a `tsdown.config.ts`, move its options into the `pack` block in `vite.config.ts`:
|
|
130
|
-
|
|
131
|
-
```ts [tsdown.config.ts] {4-6}
|
|
132
|
-
import { defineConfig } from 'tsdown';
|
|
133
|
-
|
|
134
|
-
export default defineConfig({
|
|
135
|
-
entry: ['src/index.ts'],
|
|
136
|
-
dts: true,
|
|
137
|
-
format: ['esm', 'cjs'],
|
|
138
|
-
});
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
```ts [vite.config.ts] {4-8}
|
|
142
|
-
import { defineConfig } from 'vite-plus';
|
|
143
|
-
|
|
144
|
-
export default defineConfig({
|
|
145
|
-
pack: {
|
|
146
|
-
entry: ['src/index.ts'],
|
|
147
|
-
dts: true,
|
|
148
|
-
format: ['esm', 'cjs'],
|
|
149
|
-
},
|
|
150
|
-
});
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
After merging, delete `tsdown.config.ts`. See the [Pack guide](/guide/pack) for the full configuration reference.
|
|
154
|
-
|
|
155
|
-
### lint-staged
|
|
156
|
-
|
|
157
|
-
Vite+ replaces lint-staged with its own `staged` block in `vite.config.ts`. Only the `staged` config format is supported. Standalone `.lintstagedrc` in non-JSON format and `lint-staged.config.*` are not migrated automatically.
|
|
158
|
-
|
|
159
|
-
Move your lint-staged rules into the `staged` block:
|
|
160
|
-
|
|
161
|
-
```ts [vite.config.ts]
|
|
162
|
-
import { defineConfig } from 'vite-plus';
|
|
163
|
-
|
|
164
|
-
export default defineConfig({
|
|
165
|
-
staged: {
|
|
166
|
-
'*.{js,ts,tsx,vue,svelte}': 'vp check --fix',
|
|
167
|
-
},
|
|
168
|
-
});
|
|
169
|
-
```
|
|
170
|
-
|
|
171
|
-
After migrating, remove lint-staged from your dependencies and delete any lint-staged config files. See the [Commit hooks guide](/guide/commit-hooks) and [Staged config reference](/config/staged) for details.
|
|
172
|
-
|
|
173
|
-
### Git hook tools
|
|
174
|
-
|
|
175
|
-
The `vp migrate` command can set up Vite+ commit hooks for you, but it doesn't automatically migrate every type of Git hook tool. This automatic migration path is specifically designed to handle Husky v9+ and lint-staged-style setups. Projects using Husky versions older than 9.0.0 are skipped and should upgrade to Husky v9 before using the automatic migration path.
|
|
176
|
-
|
|
177
|
-
If your project currently uses `lefthook`, `simple-git-hooks`, or `yorkie`, `vp migrate` will leave your existing configuration alone and show a warning. This happens even if you choose to set up hooks during the prompt or include the `--hooks` flag.
|
|
178
|
-
|
|
179
|
-
If you want to move one of those tools over to Vite+ manually, you can follow these steps. First, move your staged-file commands into the `staged` block within `vite.config.ts`. Then, update your lifecycle script so it runs `vp config`. You will also need to create a Vite+ hook at `.vite-hooks/pre-commit` that runs `vp staged`. Finally, once you have confirmed that the Vite+ hook is working as expected, you can remove the old tool's configuration and dependency.
|
|
180
|
-
|
|
181
|
-
You can find more details about the full Vite+ hook setup in the [Commit hooks guide](/guide/commit-hooks).
|
|
182
|
-
|
|
183
|
-
## Examples
|
|
184
|
-
|
|
185
|
-
```bash
|
|
186
|
-
# Migrate the current project
|
|
187
|
-
vp migrate
|
|
188
|
-
|
|
189
|
-
# Migrate a specific directory
|
|
190
|
-
vp migrate my-app
|
|
191
|
-
|
|
192
|
-
# Run without prompts
|
|
193
|
-
vp migrate --no-interactive
|
|
194
|
-
|
|
195
|
-
# Write agent and editor setup during migration
|
|
196
|
-
vp migrate --agent claude --editor zed
|
|
197
|
-
```
|