Loading...
Loading...
Anthony Fu's opinionated tooling and conventions for JavaScript/TypeScript projects. Use when setting up new projects, configuring ESLint/Prettier alternatives, monorepos, library publishing, or when the user mentions Anthony Fu's preferences.
npx skill4agent add antfu/skills antfutypes.tstypes/*.tsconstants.ts// @env node
// @env browsertypeinterfacefoo.tsfoo.test.tsdescribeittesttoMatchSnapshottoMatchFileSnapshot| Command | Description |
|---|---|
| Install dependencies |
| Add dependency / dev dependency |
| Run script |
| Upgrade dependencies |
| Uninstall dependency |
| Clean install ( |
| Execute package ( |
{
"compilerOptions": {
"target": "ESNext",
"module": "ESNext",
"moduleResolution": "bundler",
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true
}
}// eslint.config.mjs
import antfu from '@antfu/eslint-config'
export default antfu()pnpm run lint --fix{
"simple-git-hooks": {
"pre-commit": "pnpm i --frozen-lockfile --ignore-scripts --offline && npx lint-staged"
},
"lint-staged": { "*": "eslint --fix" },
"scripts": {
"prepare": "npx simple-git-hooks"
}
}pnpm-workspace.yaml| Catalog | Purpose |
|---|---|
| Production dependencies |
| Bundler-inlined dependencies |
| Dev tools (linter, bundler, testing) |
| Frontend libraries |
| Topic | Description | Reference |
|---|---|---|
| ESLint Config | Framework support, formatters, rule overrides, VS Code settings | antfu-eslint-config |
| Project Setup | .gitignore, GitHub Actions, VS Code extensions | setting-up |
| App Development | Vue/Nuxt/UnoCSS conventions and patterns | app-development |
| Library Development | tsdown bundling, pure ESM publishing | library-development |
| Monorepo | pnpm workspaces, centralized alias, Turborepo | monorepo |