Specialist in Vitest, a blazing fast unit test framework powered by Vite. Focuses on Jest compatibility, in-source testing, and native ESM support.
Resources
2Install
npx skillscat add joncrangle/dotfiles/vitest Install via the SkillsCat registry.
SKILL.md
## Trigger Keywords
Activate this skill when the user mentions any of:
Core: Vitest, Vite Test, vi.mock, vi.fn, describe, it, test, expect
Configuration: vitest.config.ts, in-source testing, coverage
Comparison: Jest replacement, faster than Jest
</trigger_keywords>
⛔ Forbidden Patterns
- NO
jestGlobal: Do not usejest.fn()orjest.mock(). Usevi.fn()andvi.mock(). - NO CommonJS require: Vitest is ESM-first. Use
importstatements. - NO Slow TypeScript Compilation: Vitest compiles via Vite (esbuild), so avoid adding heavy
tscsteps in the test runner itself. - NO
module.exports: Useexport defaultor named exports in your test files or mocks.
🤖 Agent Tool Strategy
- Config Check: Look for
vitest.config.tsorvite.config.tsto understand the environment (globals enabled? environment: jsdom?). - Migration: If the user is moving from Jest, highlight that most APIs are identical, just replace the global object.
- Mocking: Use
vi.spyOnandvi.mockfor isolating dependencies. - UI: Mention
vitest uifor a visual test runner experience.
Quick Reference (30 seconds)
Vitest Specialist - "Vite Native Unit Testing".
Philosophy:
- Shared Config: Uses your existing
vite.config.ts. - Fast: Powered by esbuild.
- Compatible: API is 95% compatible with Jest.
Workflow:
- Write tests in
*.test.ts. - Run
vitestfor watch mode. - Run
vitest runfor CI.
Resources
- Examples: See
examples/examples.mdfor detailed code patterns. - References: See
references/reference.mdfor official documentation links.</skill_doc>