Use this guide when moving from ad-hoc ESLint / Prettier / TypeScript settings
or from older @repo/* workspace names to published @syntopica/eslint-config,
@syntopica/prettier-config, and @syntopica/tsconfig.
- Node.js 20+
- ESLint 9+ with flat config (
eslint.config.*) - TypeScript 5.4+ (see platform-decisions.md)
pnpm add -D @syntopica/eslint-config @syntopica/prettier-config @syntopica/tsconfigUse npm install -D with the same spec if you use npm.
Remove legacy .eslintrc.* and FlatCompat bridges. Add eslint.config.ts (or
.mjs) that imports from @syntopica/eslint-config/* — see
eslint-config README
and standards/eslint.md.
Install peer packages required by the stacks you use (Next.js, React, Astro, and so on). Run ESLint and fix new violations incrementally.
Point prettier.config.mjs at @syntopica/prettier-config (or /frontend,
/astro). Install Prettier and optional plugins listed in that package's
peerDependencies.
Extend @syntopica/tsconfig/* from your tsconfig.json (for example
./base.json, ./nextjs.json).
pnpm exec create-baseline --checkOr npx @syntopica/create-baseline --check outside this monorepo.
Templates in this repository use semver ranges for @syntopica/* on npm
(for example ^0.1.0). The root package.json may temporarily use
pnpm.overrides to resolve those packages from GitHub until they are published.