name: formatting-standards description: Formatting and linting standards using GTS, ESLint, and Prettier. Use when writing or formatting TypeScript code in this project.
Formatting Standards
Tools
This repository uses:
- ESLint for code quality (extends GTS)
- Prettier for formatting (extends GTS)
- GTS (Google TypeScript Style) for TypeScript style
Configuration Files
.eslintrc.json- ESLint configuration (extends GTS).prettierrc.js- Prettier configuration (extends GTS).eslintignore- Files to ignore for linting.prettierignore- Files to ignore for formatting
Formatting Rules
Based on GTS and project configuration:
- Indentation: 4 spaces (not tabs)
- Line Width: 160 characters
- Import Spacing: Spaces around braces:
{ Item }not{Item} - Function Signatures: Multi-line when they exceed print width
- Arrow Functions: Parentheses around single parameters:
(x) =>notx => - Quotes: Single quotes (from GTS)
- Semicolons: Required (from GTS)
- Trailing Commas: ES5 style (from GTS)
Running Formatting
# Format all files
npm run format
# Check formatting without writing
npm run format:check
# Format and fix linting issues
npm run format:fix
VS Code Integration
Format on save is configured in .vscode/settings.json:
- Prettier is the default formatter
- ESLint auto-fix on save
- Format on save enabled for TypeScript, JavaScript, JSON
Before Committing
Always run:
npm run format:fix
This ensures:
- Code is formatted according to GTS/Prettier rules
- Linting issues are automatically fixed
- Consistent code style across the repository