SonarJS
SonarJS is a static code analyser for the JavaScript language. It will allow you to produce stable and easily supported code by helping you to find and to correct bugs, vulnerabilities and smells in your code.
➡️ SonarTS, our analyzer for TypeScript
➡️ eslint-plugin-sonarjs, our plugin for ESLint
Features
- Advanced rules based on control flow and data flow analysis
- ~190 rules (including ~60 bug detection)
- Compatible with ECMAScript 2015-2017
- React JSX, Flow and Vue support
- Metrics (complexity, number of lines etc.)
- Import of test coverage reports
- Import of ESLint issues
- Custom rules
Documentation
- Get Started
- Advanced Configuration
- Configuring Rules Profile
- Writing Custom Rules
- FAQ
- Demo project analysis
Have question or feedback?
GitHub issues
If you want to report a bug, request a feature or provide other kind of feedback, create a GitHub issue.
SonarQube Community Forum
You can also use SonarQube Community Forum. Please do not forget to specify the details of your request, as well as analysers' and SonarQube versions.
We have a twitter account where you can follow the development of this plugin.
Contributing
1. GitHub issue
To request a new feature, create a GitHub issue. Even if you plan to implement it yourself and submit it back to the community, please create an issue to be sure that we can follow up on it.
2. Pull Request
To submit a contribution, create a pull request for this repository. Please make sure that you follow our code style and all tests are passing (Travis build is created for each PR).
Custom Rules
If you have an idea for a rule but you are not sure that everyone needs it you can implement a custom rule available only for you.
Work with us
Would you like to work on this project full-time? We are hiring! Check out https://www.sonarsource.com/hiring
License
Copyright 2011-2017 SonarSource.
Licensed under the GNU Lesser General Public License, Version 3.0