Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@sylphlab/eslint-config-sylph-strict

sylphlab14MIT0.2.0TypeScript support: included

Strict ESLint Flat Configuration for SylphLab TypeScript Projects (Extends Standard)

eslint, eslintconfig, eslint-config, config, typescript, sylph, sylphlab, strict

readme

@sylphlab/eslint-config-sylph-strict

This package provides the Strict ESLint Flat Configuration for SylphLab TypeScript projects.

It extends the standard @sylphlab/eslint-config-sylph configuration and adds stricter rules suitable for mature projects or pre-release validation.

Philosophy

  • Extends Standard: Builds upon the base @sylphlab/eslint-config-sylph configuration.
  • Maximum Strictness: Re-enforces rules relaxed in the standard config (e.g., no-explicit-any, abbreviations) as errors.
  • Low Limits: Enforces low limits for complexity, file/function length, nesting depth, and parameters as errors.

  • Functional Programming: Re-introduces strict functional programming rules (immutability, no-throw) via eslint-plugin-functional.

Use this configuration when the highest level of code quality, consistency, and adherence to strict patterns is required. For general development, the standard @sylphlab/eslint-config-sylph configuration is recommended.

Installation

  1. Ensure Standard Config is Installed: Follow the installation steps for @sylphlab/eslint-config-sylph first, including installing ESLint, TypeScript, and all its peer dependencies (using install-peerdeps is recommended).
  2. Install This Package:
    # Using pnpm (recommended)
    pnpm add -D @sylphlab/eslint-config-sylph-strict
  3. Install Additional Peer Dependencies: This package requires eslint-plugin-functional.
    pnpm add -D eslint-plugin-functional
    (Note: Other peers like eslint, typescript, typescript-eslint should already be installed via the standard config setup).

Usage (eslint.config.js or eslint.config.ts)

Import the configuration array from this package instead of the standard one.

// eslint.config.js
import { sylphStrict } from '@sylphlab/eslint-config-sylph-strict';

export default [
  ...sylphStrict,
  // Add any project-specific overrides here, if absolutely necessary
  {
    // Example: Further restrict a rule if needed
    // rules: { 'max-params': ['error', 3] }
  },
];

Important: Ensure you have a correctly configured tsconfig.json that includes all files intended for linting. This strict configuration relies heavily on type information.

changelog

Changelog

1.0.1

Patch Changes

  • a39f761: docs: Update README with core rules rationale, update package metadata, and add LICENSE file.

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.