Custom ESLint rules and configurations for Fyle projects.
This monorepo contains the following packages:
- core: Core ESLint rules for Fyle projects (located in
packages/core)
Install the plugin from GitHub:
# Install from master branch
npm install --save-dev @fyle/eslint-plugin@github:fylein/fyle-eslint-plugin#master
# Or install from a specific tag/version
npm install --save-dev @fyle/eslint-plugin@github:fylein/fyle-eslint-plugin#v1.0.2
# For developers: install from a feature branch (e.g., testing latest features)
npm install --save-dev @fyle/eslint-plugin@github:fylein/fyle-eslint-plugin#feature/multiple-prefixes-and-page-filesAdd the plugin to your ESLint configuration:
// eslint.config.js
import fyleCore from 'fyle-eslint-plugin';
export default [
{
plugins: {
'fyle-core': fyleCore,
},
rules: {
'fyle-core/i18n-key-naming-convention': 'error',
'fyle-core/no-hardcoded-strings': 'error',
},
},
];- Linting:
npm run lint(runs on all packages) - Formatting:
npm run format(uses Prettier) - Testing:
npm test(runs Jest tests in all packages) - Type Checking:
npm run type-check(if applicable) - Pre-commit hooks: Automatically run lint, format, and relevant tests on staged files using Husky and lint-staged.
- CI: All PRs and pushes to
masterrun lint, type-check, and tests via GitHub Actions.
We welcome contributions! Please read our Contributing Guidelines and Code of Conduct before submitting issues or pull requests.
- Use conventional commits for commit messages.
- Pull requests and issues use templates for consistency.
- All code must pass linting, formatting, and tests before merging.
- See CONTRIBUTING.md for detailed instructions on setup, development, and submitting changes.
MIT