What problem does it solve?
Architectural consistency is hard to enforce across TypeScript projects. This Skill provides a ready-made ESLint-based enforcement layer to block infra imports from domain code, ensure object-parameter functions, and prevent server/client leaks.
Core Features & Use Cases
- Enforce Architectural Boundaries: Domain code must not import from infra, ensuring clean dependency direction.
- Enforce Function Signatures: Use object parameters to improve readability and maintainability.
- Enforce Server/Client Separation: Block server imports in client code to prevent data leakage and runtime issues.
- Ready-to-use ESLint Configuration: Provides a cohesive config that combines no-restricted-imports, boundaries, prefer-object-params, and no-server-imports rules, ready to drop into an existing project.
Quick Start
Install the required plugins and add the rules to your ESLint config. Example steps:
- npm install -D eslint @typescript-eslint/parser eslint-plugin-boundaries eslint-plugin-prefer-object-params eslint-plugin-no-server-imports
- Update your eslint.config.mjs or .eslintrc to include the rules as described in this Skill.
- Run npm run lint or your CI workflow to enforce the rules.