GithubHelp home page GithubHelp logo

bjeaurn / angular-eslint Goto Github PK

View Code? Open in Web Editor NEW

This project forked from angular-eslint/angular-eslint

0.0 2.0 0.0 563 KB

:sparkles: Monorepo for all the tooling related to using ESLint with Angular

License: MIT License

TypeScript 95.36% JavaScript 4.15% HTML 0.14% CSS 0.03% Shell 0.31%

angular-eslint's Introduction

Angular ESLint

Monorepo for all the tooling which enables ESLint to lint Angular projects

Azure Pipelines NPM Version GitHub license NPM Downloads Codecov Commitizen friendly


This project is made possible thanks to the continued hard work going into https://github.com/typescript-eslint/typescript-eslint, and brilliant work on the original TSLint rule implementations in https://github.com/mgechev/codelyzer.

Feel free to begin playing with the tooling in your own projects and submit PRs with missing rules and bug fixes.

We would also be very grateful for documentation PRs!


Packages included in this project

Please follow the links below for the packages you care about.

  • @angular-eslint/builder - An Angular CLI Builder which is used to execute ESLint on your Angular projects using standard commands such as ng lint

    • This package is also used to power ESLint usage within https://github.com/nrwl/nx workspaces, regardless of which framework is being used.
  • @angular-eslint/eslint-plugin - An ESLint-specific plugin that contains rules which are specific to Angular projects. It can be combined with any other ESLint plugins in the normal way.

  • @angular-eslint/template-parser - An ESLint-specific parser which leverages the @angular/compiler to allow for custom ESLint rules to be written which assert things about your Angular templates.

  • @angular-eslint/eslint-plugin-template - An ESLint-specific plugin which, when used in conjunction with @angular-eslint/template-parser, allows for Angular template-specific linting rules to run.


Migrating from Codelyzer and TSLint

If you are looking for general help in migrating from TSLint to ESLint, you can check out this project: https://github.com/typescript-eslint/tslint-to-eslint-config

For Angular project's specifically, the migration involves a few different aspects:

  1. Replacing the builder the Angular CLI will use when you run ng lint

  2. Replacing your tslint.json files with .eslintrc.json files

  3. Populating the .eslintrc.json files appropriately to match the previous setup you had in the Codelyzer + TSLint world

The best source of information for performing this migration is located within the Angular CLI integration test within this monorepo. Check out the relevant configuration files:

Soon we will provide an example project and also an ng add schematic to handle all of this for you automatically.

If you are interested in creating this, we would be very grateful to receive a PR in the meantime!

Rules List

Help wanted to document previous Codelyzer rules and progress made so far in this repo!

Please use this as inspiration: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/ROADMAP.md

You can also see how the setup and rules are mapped within the integration test setup: packages/integration-tests/fixtures/angular-cli-workspace/.eslintrc.js

angular-eslint's People

Contributors

cammisuli avatar dependabot[bot] avatar jameshenry avatar kimamula avatar rafaelss95 avatar rarmatei avatar sfabriece avatar wkoza avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.