Contributing
Thank you for considering contributing to eslint-config-airbnb-extended
. We welcome all contributions, whether it’s fixing a bug, improving documentation, or suggesting new rules.
How to Contribute
1. Fork & Clone the Repository
$ git clone git@github.com:NishargShah/eslint-config-airbnb-extended.git
$ cd eslint-config-airbnb-extended
$ git clone https://github.com/NishargShah/eslint-config-airbnb-extended.git
$ cd eslint-config-airbnb-extended
2. Install Dependencies
Check the .nvmrc
file for the required Node.js version. For pnpm
version, see the packageManager
field in the root package.json
.
This project is a monorepo managed with pnpm. Install dependencies with:
$ pnpm install
3. Project Structure
The repo is organized as a monorepo with two main packages:
packages/eslint-config-airbnb-extended
→ The ESLint configuration packagepackages/create-airbnb-x-config
→ The CLI tool for quick setupdocs/
→ Documentation site (built with VitePress)
4. Making Changes
Always create a new branch:
sh$ git checkout -b fix/your-change
For rule changes → update the config.
For docs → check formatting and verify links.
5. Linting & Formatting
Run checks and fixes before committing:
$ pnpm lint
$ pnpm format:check
$ pnpm lint:fix
$ pnpm format:fix
6. Commit Guidelines
We follow Conventional Commits for a clean commit history. Examples:
feat: add strict rules for TypeScript
fix: resolve path alias issue in eslint-import-resolver-typescript
docs: update installation steps
7. Running Scripts
Before pushing, ensure all scripts pass:
$ pnpm script:lint
8. Submitting a PR
- Push your branch and open a Pull Request against
main
. - Clearly describe the problem, your solution, and reference any related issues/discussions.
- Maintainers will review, suggest improvements if needed, and merge once approved.
Code of Conduct
This project follows a Code of Conduct. Please be respectful, collaborative, and inclusive.
Suggestions & Issues
- Found a bug? → Open an Issue
- Want a new feature or rule? → Use the same link to create an issue, or start a discussion before opening a PR.