Skip to content

Code Linting

Fresh

ESLint Configuration

Installation

bash
npm install @elgato/eslint-config --save-dev

Preset Levels

PresetDescription
RecommendedStandard enforcement
StrictEnhanced type validation

Core Rules

  • Tab indentation (warnings)
  • JSDoc validation (tags, types, completeness)
  • TypeScript explicit return types (warning in strict mode)
  • Member ordering by type and access level

Member Ordering

Fields > Constructors > Signatures > Properties > Methods

Access order: public > protected > private

Ignored Paths

.github/, bin/, dist/, node_modules/

Configuration

Create eslint.config.js in project root:

javascript
import elgato from "@elgato/eslint-config";

export default [
  ...elgato.recommended,
  // your overrides
];

Prettier Configuration

Installation

bash
npm install @elgato/prettier-config --save-dev

Key Settings

SettingValue
Print width120 characters
QuotesDouble
SemicolonsYes
Tab width4 spaces (2 for YAML)
IndentationTabs (except JSON/Markdown)
Line endingsLF

Usage

bash
# Check formatting
npx prettier --check .

# Apply formatting
npx prettier --write .

Configuration

Add to package.json:

json
{
  "prettier": "@elgato/prettier-config"
}

EditorConfig

Create .editorconfig in project root for consistent editor settings.