Skip to content

SonarSource Static Analyzer for JavaScript and TypeScript

License

Notifications You must be signed in to change notification settings

SonarSource/SonarJS

Folders and files

NameName
Last commit message
Last commit date
Nov 25, 2024
Mar 27, 2025
Dec 6, 2024
Feb 17, 2025
Jan 13, 2025
Mar 27, 2025
Mar 27, 2025
Mar 27, 2025
Jan 31, 2025
Jan 9, 2025
Mar 27, 2025
Mar 20, 2025
Mar 24, 2025
Mar 3, 2025
Nov 5, 2024
Mar 27, 2025
Jun 3, 2019
Jan 9, 2025
Dec 4, 2024
Dec 14, 2017
Mar 19, 2025
Oct 9, 2023
Oct 21, 2024
Feb 26, 2025
Nov 26, 2024
Aug 19, 2024
Mar 19, 2025
Aug 26, 2024
May 23, 2018
Jan 13, 2025
Feb 4, 2025
Mar 27, 2025
Mar 27, 2025
Mar 27, 2025
Nov 14, 2024
Feb 24, 2025
Feb 28, 2025
Oct 16, 2024
Nov 11, 2021

Repository files navigation

Quality Gate Coverage

This SonarSource project is a static code analyzer for the JavaScript, TypeScript, and CSS languages to produce Clean code.

➡️ Have some feedback?

This repository now hosts eslint-plugin-sonarjs, our plugin for ESLint.

Features

  • Advanced rules based on pattern matching and control flow analysis
  • 407 JS rules and 413 TS rules
  • 26 CSS rules
  • Compatible with ECMAScript 2015-2020
  • React JSX, Flow, Vue, and AWS lambda functions support for JavaScript and TypeScript
  • CSS, SCSS, SASS, Less, also 'style' inside HTML and VueJS files
  • Metrics (complexity, number of lines, etc.)
  • Import of test coverage reports
  • Import of ESLint, TSLint, and Stylelint issues

Documentation

You can find documentation here

Questions or feedback?

SonarSource Community Forum

If you want to report a bug, request a feature, or provide other kind of feedback, please use SonarQube Community Forum. Please do not forget to specify the details of your request, code reproducer, and versions of projects you use.

Contributing

Prerequisites

To work on this project, it is required to have the following tools installed:

How-to

Build the project

The project can be built into the SonarJS Plugin by installing Node.js dependencies, and executing the usual Maven install command.

npm install
mvn clean install

Request a new feature

To request a new feature, create a new thread in SonarSource Community Forum. Even if you plan to implement it yourself and submit it back to the community, please create a thread to be sure that we can follow up on it.

Create a Pull Request

To submit a contribution, create a pull request for this repository. Please make sure that you follow our code style and that all tests are passing.

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-2024 SonarSource.

SonarQube analyzers released after November 29, 2024, including patch fixes for prior versions, are published under the Sonar Source-Available License Version 1 (SSALv1).

See individual files for details that specify the license applicable to each file. Files subject to the SSALv1 will be noted in their headers.