Hairy's {Opinionated} preferences and best practices for web development
Hairyf's opinionated web development stack and best practices for TypeScript projects.
Core tooling: pnpm, TypeScript (strict mode), ESM, @antfu/eslint-config (no Prettier), Vitest, and VitePress for documentation
Enforces "specify" workflow to align projects with these preferences, including architecture detection via arch-upkeep, dependency freshness via taze, and lint + typecheck gates
Prioritizes unjs ecosystem frameworks (Nuxt, Nitro, h3, etc.) and maps project architecture to canonical arch-* skills for consistent structure
Includes Git hooks setup (simple-git-hooks + lint-staged) and publishing workflow via bumpp for library projects
Hairyf's Preferences
This skill covers Hairyf's preferred tooling, configurations, and best practices for web development. This skill is opinionated.
Quick Summary
Category
Preference
Package Manager
pnpm
Language
TypeScript (strict mode)
Module System
ESM ("type": "module")
Linting & Formatting
@antfu/eslint-config (no Prettier)
Testing
Vitest
Git Hooks
simple-git-hooks + lint-staged
Documentation
VitePress (in docs/)
Global Preferencesdon't have the plugin yet? install it then click "run inline in claude" again.