@carrismetropolitana/eslint
v20251107.1231.48
Published
ESLint rules and configuration for Carris Metropolitana codebases, providing consistent code quality and formatting standards across TypeScript, JavaScript, and JSON files.
Readme
ESLint Configuration for Carris Metropolitana
ESLint rules and configuration for Carris Metropolitana codebases, providing consistent code quality and formatting standards across TypeScript, JavaScript, and JSON files.
Quick Start
# 1. Install ESLint configuration
npm install @carrismetropolitana/eslint
# 2. Create eslint.config.mjs
echo "import config from '@carrismetropolitana/eslint'; export default config;" > eslint.config.mjsFeatures
- TypeScript Support: Comprehensive TypeScript rules with type-checking
- Code Style: Consistent formatting with @stylistic/eslint-plugin
- Import Organization: Automatic import sorting with perfectionist plugin
- JSON Linting: Support for JSON and JSON with comments (JSONC)
- Multiple Configurations: Specialized configs for Node.js and Next.js projects
- React/JSX Support: Comprehensive React and React Hooks rules for Next.js projects
- Naming Conventions: Enforced naming standards for frontend/backend consistency
Documentation
Auto-Generated Rule Documentation
This package includes comprehensive, auto-generated documentation of all active ESLint rules:
linting-rules-analysis.md- Human-readable analysis of all rules organized by categoryeslint-effective-config.json- Complete effective configuration in JSON format
Updating Documentation
After making changes to the ESLint configuration, regenerate the documentation:
npm run docsThis command will:
- Build the TypeScript configuration files
- Generate the effective ESLint configuration
- Create updated rule analysis documentation
- Clean up temporary files
Available Documentation Commands
npm run docs # Generate/update all documentation
npm run docs:generate # Generate documentation (same as docs)
npm run docs:clean # Remove generated documentation filesInstallation & Usage
Install Package
npm install @carrismetropolitana/eslintConfigure ESLint
Create eslint.config.mjs in your project root:
// For Node.js projects (default)
import config from '@carrismetropolitana/eslint'
export default config
// For Next.js/React projects
import { nextConfig } from '@carrismetropolitana/eslint'
export default nextConfig