Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 21 additions & 17 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,36 +29,40 @@ When making changes to demo api, either start the api and verify it's running or

Run the appropriate checks after every change and fix all reported errors.

### In a package (`packages/*`) or demo service (`demo/*`)
### Post-Change Workflow

Run from the package or service folder, or from the repo root using the `--filter` flag:
After making changes to any package (`packages/*`) or the demo project (`demo/*`), run `lint:fix` to auto-fix ESLint and Prettier issues:

```bash
# Auto-fix ESLint issues (also applies prettier formatting via eslint-plugin-prettier)
pnpm run lint:eslint --fix
# Fix a single package (from the package folder or repo root)
pnpm run lint:fix
# or from repo root:
pnpm --filter <package-name> run lint:eslint --fix
pnpm --filter <package-name> run lint:fix

# Fix remaining prettier errors (if any still reported after lint:eslint --fix)
pnpm exec prettier --write .
# or from repo root:
pnpm --filter <package-name> exec prettier --write .

# Verify all checks pass: prettier, eslint, tsc
pnpm run lint
# or from repo root:
pnpm --filter <package-name> run lint
# Fix all packages at once (from repo root)
pnpm run lint:fix
```

`tsc` errors must be fixed manually. There is no standalone prettier format script — prettier formatting is applied via `lint:eslint --fix`.
`tsc` errors must be fixed manually — `lint:fix` does not cover type errors.

### `lint:fix` scripts

Every package and demo service exposes these scripts:

- `lint:fix` — runs `lint:fix:eslint` and `lint:fix:prettier` in parallel (plus `lint:fix:style` in `demo/site`)
- `lint:fix:eslint` — runs ESLint with `--fix` (also applies Prettier formatting via `eslint-plugin-prettier`)
- `lint:fix:prettier` — runs Prettier with `--write` for any remaining formatting issues
- `lint:fix:style` — runs Stylelint with `--fix` (`demo/site` only)

The root-level `lint:fix` runs all workspace `lint:fix` scripts recursively, then formats root-level config files.

### In `docs/`

Run from the `docs/` folder:

```bash
# Auto-fix ESLint issues
pnpm run lint:eslint --fix
# Auto-fix ESLint + Prettier issues
pnpm run lint:fix

# Verify all checks pass: prettier, eslint, cspell
pnpm run lint
Expand Down
3 changes: 3 additions & 0 deletions demo/admin/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@
"lint": "run-s admin-generator intl:compile && run-p gql:types generate-block-types && run-p lint:prettier lint:eslint lint:tsc intl:extract",
"lint:ci": "run-s admin-generator intl:compile && run-p gql:types generate-block-types && run-p lint:prettier lint:eslint lint:tsc lint:generated-files-not-modified",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:generated-files-not-modified": "git diff --exit-code HEAD -- $(find src -type f -path '*/generated/*')",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc --project .",
Expand Down
3 changes: 3 additions & 0 deletions demo/api/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@
"lint": "pnpm run api-generator && pnpm run intl:compile && run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run api-generator && pnpm run intl:compile && run-p lint:prettier lint:eslint lint:tsc lint:generated-files-not-modified",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:generated-files-not-modified": "git diff --exit-code HEAD -- $(find src -type f -path '*/generated/*')",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc --project ./tsconfig.lint.json",
Expand Down
4 changes: 4 additions & 0 deletions demo/site/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@
"lint": "run-s intl:compile && run-p gql:types generate-block-types css:types && run-p lint:prettier lint:eslint lint:tsc lint:style",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier lint:fix:style",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml,css,scss}'",
"lint:fix:style": "pnpm run lint:style --fix",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml,css,scss}'",
"lint:style": "pnpm exec stylelint '**/*.{css,scss}'",
"lint:tsc": "tsc --project .",
Expand Down
3 changes: 3 additions & 0 deletions docs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@
"lint": "run-p lint:prettier lint:eslint lint:spelling",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:spelling": "pnpm cspell docs/**",
"serve": "docusaurus serve",
Expand Down
2 changes: 2 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@
"intl:extract": "formatjs extract './packages/admin/**/*.{ts,tsx}' --out-file 'lang/en.json' --ignore '**/*.{test,spec}.{ts,tsx}' --ignore './**.d.ts' --ignore './**.d.ts.map' --format simple --throws",
"lint": "pnpm lint:root && pnpm --recursive run lint && pnpm lint:knip",
"lint:ci": "pnpm lint:root && pnpm --recursive run lint:ci && pnpm lint:knip",
"lint:fix": "pnpm --recursive run lint:fix && pnpm lint:fix:root",
"lint:fix:root": "pnpm exec prettier --write './!(demo|docs|packages|storybook)/**/*.{ts,js,json,md,yml,yaml}'",
"lint:root": "pnpm exec prettier --check './!(demo|docs|packages|storybook)/**/*.{ts,js,json,md,yml,yaml}' && pnpm cspell .changeset/*.md",
"lint:eslint": "pnpm --recursive run lint:eslint",
"lint:tsc": "pnpm --recursive run lint:tsc",
Expand Down
3 changes: 3 additions & 0 deletions packages/admin/admin-color-picker/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@
"lint": "run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc --noEmit",
"start": "run-p start:babel start:types",
Expand Down
3 changes: 3 additions & 0 deletions packages/admin/admin-date-time/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@
"lint": "run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc --noEmit",
"start": "run-p start:babel start:types",
Expand Down
3 changes: 3 additions & 0 deletions packages/admin/admin-generator/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@
"lint": "run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc",
"test": "vitest --run",
Expand Down
3 changes: 3 additions & 0 deletions packages/admin/admin-icons/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@
"lint": "run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc --noEmit",
"start": "pnpm run generate-icons && run-p start:babel start:types",
Expand Down
3 changes: 3 additions & 0 deletions packages/admin/admin-rte/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@
"lint": "run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc --noEmit",
"start": "run-p start:babel start:types",
Expand Down
3 changes: 3 additions & 0 deletions packages/admin/admin/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@
"lint": "run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc --noEmit",
"start": "run-p start:babel start:types",
Expand Down
3 changes: 3 additions & 0 deletions packages/admin/brevo-admin/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@
"lint": "run-p gql:types generate-block-types && run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write './**/*.{js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check './**/*.{js,json,md,yml,yaml}'",
"lint:tsc": "tsc --noEmit",
"start": "run-p gql:types generate-block-types && run-p start:babel start:types",
Expand Down
3 changes: 3 additions & 0 deletions packages/admin/cms-admin/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@
"lint": "run-p gql:types generate-block-types && run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc --noEmit",
"start": "run-p gql:types generate-block-types && run-p start:babel start:types",
Expand Down
3 changes: 3 additions & 0 deletions packages/api/api-generator/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@
"lint": "run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc --noEmit",
"test": "NODE_OPTIONS=--experimental-vm-modules pnpm exec jest",
Expand Down
3 changes: 3 additions & 0 deletions packages/api/brevo-api/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@
"generate-schema:watch": "chokidar \"src/\" -c \"$npm_execpath generate-schema\"",
"lint": "run-p lint:eslint lint:tsc",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write './**/*.{js,json,md,yml,yaml}'",
"lint:prettier": "npx prettier --check './**/*.{js,json,md,yml,yaml}'",
"lint:tsc": "tsc --noEmit",
"mikro-orm": "dotenv -e .env.secrets -e .env.local -e .env -e .env.site-configs -- mikro-orm",
Expand Down
3 changes: 3 additions & 0 deletions packages/api/cms-api/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@
"lint": "run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc --noEmit",
"test": "jest",
Expand Down
3 changes: 3 additions & 0 deletions packages/cli/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@
"lint": "run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc",
"test": "vitest --run",
Expand Down
3 changes: 3 additions & 0 deletions packages/eslint-config/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,9 @@
"lint": "run-p lint:prettier lint:eslint",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'"
},
"dependencies": {
Expand Down
3 changes: 3 additions & 0 deletions packages/eslint-plugin/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@
"lint": "run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc",
"test": "jest",
Expand Down
3 changes: 3 additions & 0 deletions packages/mail-react/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@
"lint": "pnpm generate-block-types && run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc"
},
Expand Down
3 changes: 3 additions & 0 deletions packages/site/site-nextjs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,9 @@
"lint": "pnpm run generate-block-types && run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml,css,scss}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml,css,scss}'",
"lint:tsc": "tsc --noEmit",
"test": "vitest --run",
Expand Down
3 changes: 3 additions & 0 deletions packages/site/site-react/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,9 @@
"lint": "pnpm generate-block-types && run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml,css,scss}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml,css,scss}'",
"lint:tsc": "tsc --noEmit",
"test": "vitest --run",
Expand Down
3 changes: 3 additions & 0 deletions storybook/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@
"lint": "run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run lint",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' .storybook/ --no-warn-ignored",
"lint:fix": "run-p lint:fix:eslint lint:fix:prettier",
"lint:fix:eslint": "pnpm run lint:eslint --fix",
"lint:fix:prettier": "pnpm exec prettier --write '*.{ts,js,json,md,yml,yaml}'",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc --noEmit",
"storybook": "storybook dev -p 26638 --no-version-updates"
Expand Down
Loading