ESLint
Best Practices
ESLint best practices for Nova with one flat config, ordered layers, scoped rule groups, and sensible ignores for fast, predictable linting.
DX - Code Style
Enforce a strict, project-wide code style for JS and TS with a stylistic formatting baseline plus focused groups of core ESLint rules.
DX - Ignore
Exclude build output, source maps, and generated files from ESLint so linting only targets hand-written source code.
Framework - Astro
Parse TypeScript in .astro frontmatter by wiring the typescript-eslint parser into eslint-plugin-astro's flat config.
Framework - Docusaurus
Exclude the Docusaurus .docusaurus build cache from ESLint so generated framework files stay out of your lint reports.
Framework - Express.js
Reserve the Express.js framework layer in your flat config with a named ignore group ready for build output paths.
Framework - Next.js
Reserve the Next.js framework layer in your flat config with a named ignore group ready for build output paths.
Language - JavaScript
Enable the typescript-eslint parser for JavaScript and JSX files so Nova custom rules run on plain JS with full AST support.
Language - MDX
Lint MDX content with the eslint-mdx parser and remark plugin so docs and prose stay consistent alongside your TypeScript source.
Language - TypeScript
Enable the typescript-eslint parser and type-aware rules across all TypeScript files for consistent classes, safe overrides, and tidy declarations.
Runtime - Browser
Reserve the browser environment layer in your flat config so it stays forward-compatible when browser-specific lint rules ship.
Runtime - Cloudflare Workers
Reserve the Cloudflare Workers layer in your flat config with a named ignore group ready for worker build output paths.
Runtime - Edge
Reserve the edge runtime layer in your flat config so it stays forward-compatible when edge-specific lint rules ship.
Runtime - Node
Lint Node.js code with eslint-plugin-n, ban raw console and process.exit, and relax hashbang checks on CLI entry points.
Runtime - Service Worker
Reserve the Service Worker layer in your flat config so it stays forward-compatible when worker-specific lint rules ship.
Runtime - Web Worker
Reserve the Web Worker layer in your flat config so it stays forward-compatible when worker-specific lint rules ship.
Tool - Vite
Reserve the Vite tool layer in your ESLint config so future Vite-specific ignores and rules drop in without restructuring.