@snailicid3/config
v0.0.5
Published
Shared linting, formatting, and TypeScript config utilities for the snailicid3 monorepo
Maintainers
Readme
@snailicid3/config 🐌
Shared ESLint, Prettier, markdownlint, commitlint, and TypeScript base configurations for the snailicid3 monorepo.
Repository
- Github:
@snailicid3/config•snailicid3
Author
👤 Gillian Tunney
Recommended package manager is pnpm
@snailicid3/config 🐌
This package provides shareable configuration files for common tooling used across the snailicid3 monorepo. It includes ESLint flat configs, Prettier options, markdownlint rules, commitlint conventions, TypeScript base configs, and utility shell scripts.
@snailicid3/config contains:
- eslint • Flat config with TypeScript, import, jsdoc, and sort rules
- prettier • Shared Prettier options
- markdownlint-cli2 • Markdown linting rules
- commitlint • Conventional commit configuration
- typescript • Base tsconfig presets:
base,library,typecheck,docs
Installation
#pnpm
$ pnpm add @snailicid3/config -D
#yarn
$ yarn add @snailicid3/config -D
#npm
$ npm install @snailicid3/config --save-devExamples
ESLint
/* @file eslint.config.ts */
import { EsLint } from '@snailicid3/config'
const FLAT_CONFIG = await EsLint.flatConfig()
export default [
...FLAT_CONFIG,
{
ignores: ['packages/**/docs/**/*'],
},
]Prettier
/* @file package.json */
{
prettier: '@snailicid3/config/prettier',
}TypeScript
/* @file tsconfig.json */
{
extends: '@snailicid3/config/tsconfig/typecheck',
include: ['**/*.ts'],
exclude: ['node_modules'],
}Commitlint
/* @file commitlint.config.ts */
import { commitlint } from '@snailicid3/config'
export default commitlint.configuration(['root', 'my-package'])Shell Completions
The shell helper can be called through pnpm:
pnpm exec snail-sh line "-|" "50%" bg-cyanBash:
source ./node_modules/@snailicid3/config/completions/snail-sh.bashFor completions while still running through pnpm, add a small wrapper:
snail-sh() { pnpm exec snail-sh "$@"; }