Code Climate聽vs聽ESLint聽vs聽SonarQube

Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Code Climate
Code Climate

444
321
+ 1
274
ESLint
ESLint

5.3K
3.7K
+ 1
17
SonarQube
SonarQube

701
557
+ 1
17
- No public GitHub repository available -

What is Code Climate?

After each Git push, Code Climate analyzes your code for complexity, duplication, and common smells to determine changes in quality and surface technical debt hotspots.

What is ESLint?

A pluggable and configurable linter tool for identifying and reporting on patterns in JavaScript. Maintain your code quality with ease.

What is SonarQube?

SonarQube provides an overview of the overall health of your source code and even more importantly, it highlights issues found on new code. With a Quality Gate set on your project, you will simply fix the Leak and start mechanically improving.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose Code Climate?
Why do developers choose ESLint?
Why do developers choose SonarQube?

Sign up to add, upvote and see more prosMake informed product decisions

    Be the first to leave a con
    What companies use Code Climate?
    What companies use ESLint?
    What companies use SonarQube?

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Code Climate?
    What tools integrate with ESLint?
    What tools integrate with SonarQube?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to Code Climate, ESLint, and SonarQube?
    Codacy
    Codacy automates code review to improve & standardize code quality across large enterprises. It identifies issues through static code analysis. Integrates with GitLab, GitHub & Bitbucket. Supports 30+ languages
    Codecov
    Our patrons rave about our elegant coverage reports, integrated pull request comments, interactive commit graphs, our Chrome plugin and security.
    Coveralls
    Coveralls works with your CI server and sifts through your coverage data to find issues you didn't even know you had before they become a problem. Free for open source, pro accounts for private repos, instant sign up with GitHub OAuth.
    Prettier
    Prettier is an opinionated code formatter. It enforces a consistent style by parsing your code and re-printing it with its own rules that take the maximum line length into account, wrapping code when necessary.
    RuboCop
    RuboCop is a Ruby static code analyzer. Out of the box it will enforce many of the guidelines outlined in the community Ruby Style Guide.
    See all alternatives
    Decisions about Code Climate, ESLint, and SonarQube
    Russel Werner
    Russel Werner
    Lead Engineer at StackShare | 7 upvotes 207.8K views
    atStackShareStackShare
    Prettier
    Prettier
    ESLint
    ESLint
    WebStorm
    WebStorm
    Visual Studio Code
    Visual Studio Code

    We use Prettier because when we rebooted our front-end stack, I decided that it would be an efficient use of our time to not worry about code formatting issues and personal preferences during peer review. Prettier eliminates this concern by auto-formatting our code to a deterministic output. We use it along with ESLint and have 1st-class support in our WebStorm and Visual Studio Code editors.

    See more
    Johnny Bell
    Johnny Bell
    Senior Software Engineer at StackShare | 17 upvotes 663.4K views
    Webpack
    Webpack
    Node.js
    Node.js
    Yarn
    Yarn
    npm
    npm
    Babel
    Babel
    Prettier
    Prettier
    ESLint
    ESLint
    #ES6
    #ES5

    So when starting a new project you generally have your go to tools to get your site up and running locally, and some scripts to build out a production version of your site. Create React App is great for that, however for my projects I feel as though there is to much bloat in Create React App and if I use it, then I'm tied to React, which I love but if I want to switch it up to Vue or something I want that flexibility.

    So to start everything up and running I clone my personal Webpack boilerplate - This is still in Webpack 3, and does need some updating but gets the job done for now. So given the name of the repo you may have guessed that yes I am using Webpack as my bundler I use Webpack because it is so powerful, and even though it has a steep learning curve once you get it, its amazing.

    The next thing I do is make sure my machine has Node.js configured and the right version installed then run Yarn. I decided to use Yarn because when I was building out this project npm had some shortcomings such as no .lock file. I could probably move from Yarn to npm but I don't really see any point really.

    I use Babel to transpile all of my #ES6 to #ES5 so the browser can read it, I love Babel and to be honest haven't looked up any other transpilers because Babel is amazing.

    Finally when developing I have Prettier setup to make sure all my code is clean and uniform across all my JS files, and ESLint to make sure I catch any errors or code that could be optimized.

    I'm really happy with this stack for my local env setup, and I'll probably stick with it for a while.

    See more
    Joshua Dean K眉pper
    Joshua Dean K眉pper
    CEO at Scrayos UG (haftungsbeschr盲nkt) | 1 upvotes 1.1K views
    atScrayos UG (haftungsbeschr盲nkt)Scrayos UG (haftungsbeschr盲nkt)
    ESLint
    ESLint
    JSHint
    JSHint

    We use ESLint because we like to remove the general thinking-overhead when writing software. ESLint offers many presets, while also providing users with a lot of customization features. We use ESLint in conjunction with the javascript "standard" configuration (and for our vueJS-projects the "recommended" settings).

    The other option we considered was JSHint, but we scrapped that, as forward-compatibility is essential for us and ESLint is more fast-paced in its development and supports ESnext natively.

    See more
    Francisco Quintero
    Francisco Quintero
    Tech Lead at Dev As Pros | 7 upvotes 290.7K views
    atDev As ProsDev As Pros
    Node.js
    Node.js
    Rails
    Rails
    Amazon EC2
    Amazon EC2
    Heroku
    Heroku
    RuboCop
    RuboCop
    JavaScript
    JavaScript
    ESLint
    ESLint
    Slack
    Slack
    Twist
    Twist

    For many(if not all) small and medium size business time and cost matter a lot.

    That's why languages, frameworks, tools, and services that are easy to use and provide 0 to productive in less time, it's best.

    Maybe Node.js frameworks might provide better features compared to Rails but in terms of MVPs, for us Rails is the leading alternative.

    Amazon EC2 might be cheaper and more customizable than Heroku but in the initial terms of a project, you need to complete configurationos and deploy early.

    Advanced configurations can be done down the road, when the project is running and making money, not before.

    But moving fast isn't the only thing we care about. We also take the job to leave a good codebase from the beginning and because of that we try to follow, as much as we can, style guides in Ruby with RuboCop and in JavaScript with ESLint and StandardJS.

    Finally, comunication and keeping a good history of conversations, decisions, and discussions is important so we use a mix of Slack and Twist

    See more
    Jerome Dalbert
    Jerome Dalbert
    Senior Backend Engineer at StackShare | 5 upvotes 296.2K views
    atStackShareStackShare
    GitHub
    GitHub
    CircleCI
    CircleCI
    Code Climate
    Code Climate
    Brakeman
    Brakeman
    RuboCop
    RuboCop
    RSpec
    RSpec
    Rails
    Rails
    Git
    Git
    #ContinuousIntegration

    The continuous integration process for our Rails backend app starts by opening a GitHub pull request. This triggers a CircleCI build and some Code Climate checks.

    The CircleCI build is a workflow that runs the following jobs:

    • check for security vulnerabilities with Brakeman
    • check code quality with RuboCop
    • run RSpec tests in parallel with the knapsack gem, and output test coverage reports with the simplecov gem
    • upload test coverage to Code Climate

    Code Climate checks the following:

    • code quality metrics like code complexity
    • test coverage minimum thresholds

    The CircleCI jobs and Code Climate checks above have corresponding GitHub status checks.

    Once all the mandatory GitHub checks pass and the code+functionality have been reviewed, developers can merge their pull request into our Git master branch. Code is then ready to deploy!

    #ContinuousIntegration

    See more
    Ganesa Vijayakumar
    Ganesa Vijayakumar
    Full Stack Coder | Module Lead | 15 upvotes 1M views
    Codacy
    Codacy
    SonarQube
    SonarQube
    React
    React
    React Router
    React Router
    React Native
    React Native
    JavaScript
    JavaScript
    jQuery
    jQuery
    jQuery UI
    jQuery UI
    jQuery Mobile
    jQuery Mobile
    Bootstrap
    Bootstrap
    Java
    Java
    Node.js
    Node.js
    MySQL
    MySQL
    Hibernate
    Hibernate
    Heroku
    Heroku
    Amazon S3
    Amazon S3
    Amazon RDS
    Amazon RDS
    Solr
    Solr
    Elasticsearch
    Elasticsearch
    Amazon Route 53
    Amazon Route 53
    Microsoft Azure
    Microsoft Azure
    Amazon EC2 Container Service
    Amazon EC2 Container Service
    Apache Maven
    Apache Maven
    Git
    Git
    Docker
    Docker

    I'm planning to create a web application and also a mobile application to provide a very good shopping experience to the end customers. Shortly, my application will be aggregate the product details from difference sources and giving a clear picture to the user that when and where to buy that product with best in Quality and cost.

    I have planned to develop this in many milestones for adding N number of features and I have picked my first part to complete the core part (aggregate the product details from different sources).

    As per my work experience and knowledge, I have chosen the followings stacks to this mission.

    UI: I would like to develop this application using React, React Router and React Native since I'm a little bit familiar on this and also most importantly these will help on developing both web and mobile apps. In addition, I'm gonna use the stacks JavaScript, jQuery, jQuery UI, jQuery Mobile, Bootstrap wherever required.

    Service: I have planned to use Java as the main business layer language as I have 7+ years of experience on this I believe I can do better work using Java than other languages. In addition, I'm thinking to use the stacks Node.js.

    Database and ORM: I'm gonna pick MySQL as DB and Hibernate as ORM since I have a piece of good knowledge and also work experience on this combination.

    Search Engine: I need to deal with a large amount of product data and it's in-detailed info to provide enough details to end user at the same time I need to focus on the performance area too. so I have decided to use Solr as a search engine for product search and suggestions. In addition, I'm thinking to replace Solr by Elasticsearch once explored/reviewed enough about Elasticsearch.

    Host: As of now, my plan to complete the application with decent features first and deploy it in a free hosting environment like Docker and Heroku and then once it is stable then I have planned to use the AWS products Amazon S3, EC2, Amazon RDS and Amazon Route 53. I'm not sure about Microsoft Azure that what is the specialty in it than Heroku and Amazon EC2 Container Service. Anyhow, I will do explore these once again and pick the best suite one for my requirement once I reached this level.

    Build and Repositories: I have decided to choose Apache Maven and Git as these are my favorites and also so popular on respectively build and repositories.

    Additional Utilities :) - I would like to choose Codacy for code review as their Startup plan will be very helpful to this application. I'm already experienced with Google CheckStyle and SonarQube even I'm looking something on Codacy.

    Happy Coding! Suggestions are welcome! :)

    Thanks, Ganesa

    See more
    Buzz Zhang
    Buzz Zhang
    CTO at Qiban | 7 upvotes 18.1K views
    at浼佸姙浼佸姙
    Visual Studio Code
    Visual Studio Code
    ESLint
    ESLint
    Prettier
    Prettier

    I use Visual Studio Code because plugins. For choosing IDE, the most important part is not IDE itself, but plugins. Some may argues that Visual Studio Code is not IDE, but I like to call it IDE, any text editor can do debug is IDE. Visual Studio Code can do it, and can use ESLint and Prettier , so it's IDE.

    See more
    Forrest Norvell
    Forrest Norvell
    engineering manager at self-employed | 6 upvotes 126.5K views
    TSLint
    TSLint
    ESLint
    ESLint
    Flow (JS)
    Flow (JS)
    Visual Studio Code
    Visual Studio Code
    TypeScript
    TypeScript

    I use TypeScript because the tooling is more mature (the decision to discontinue TSLint in favor of moving all its checks to ESLint is a thoughtful and mature decision), there's a ton of examples and tutorials for it, and it just generally seems to be where the industry is headed. Flow (JS) is a fine tool, but it just hasn't seen the uptake that TS has, and as a result is lacking a lot of the nicer small things, like thorough Visual Studio Code integration, offered by TS.

    See more
    Gustavo Mu帽oz
    Gustavo Mu帽oz
    Web UI Developer at Globant | 4 upvotes 2.7K views
    ESLint
    ESLint
    Prettier
    Prettier
    Sass
    Sass
    #Airbnb

    I decided to use ESLint over other tools like Prettier because I think it's better to show your fails than fix them without knowing what you are doing. It's a better way to learn. I know it's slower, but you are fully conscious of your work. I also use Sass linters for the same reason. I recommend Prettier when you are already a senior developer, but try to use linters instead when you start coding. It will help you to improve a lot. I recommend you #Airbnb rules set. Strict, but well written. Very useful even for accesibility.

    See more
    SonarQube
    SonarQube
    codebeat
    codebeat
    Codacy
    Codacy

    It is very important to have clean code. To be sure that the code quality is not really bad I use a few tools. I love SonarQube with many relevant hints and deep analysis of code. codebeat isn't so detailed, but it can find complexity issues and duplications. Codacy cannot find more bugs then your IDE. The winner for me is SonarQube that shows me really relevant bugs in my code.

    See more
    Sass Lint
    Sass Lint
    Stylelint
    Stylelint
    gulp
    gulp
    ESLint
    ESLint
    Prettier
    Prettier

    Scenario: I want to integrate Prettier in our code base which is currently using ESLint (for .js and .scss both). The project is using gulp.

    It doesn't feel quite right to me to use ESLint, I wonder if it would be better to use Stylelint or Sass Lint instead.

    I completed integrating ESLint + Prettier, Planning to do the same with [ Stylelint || Sasslint || EsLint] + Prettier.

    And have gulp 'fix' on file save (Watcher).

    Any recommendation is appreciated.

    See more
    Bryan Dady
    Bryan Dady
    SRE Manager at Subsplash | 3 upvotes 5K views
    GitLab CI
    GitLab CI
    SonarQube
    SonarQube
    Sonatype Nexus
    Sonatype Nexus
    Snyk
    Snyk
    WhiteSource
    WhiteSource

    I'm beginning to research the right way to better integrate how we achieve SCA / shift-left / SecureDevOps / secure software supply chain. If you use or have evaluated WhiteSource, Snyk, Sonatype Nexus, SonarQube or similar, I would very much appreciate your perspective on strengths and weaknesses and how you selected your ultimate solution. I want to integrate with GitLab CI.

    See more
    Interest over time
    Reviews of Code Climate, ESLint, and SonarQube
    Review ofCode ClimateCode Climate

    This is one of the key tools I can't leave out when I'm working on a project, basically it is mandatory for me to use it on my Ruby on Rails projects. I think the price is a little expensive for a "Solo plan" but if you can get your client to pay, it's definitely worth it. You or the future developers that will continue with the project will thank you!

    How developers use Code Climate, ESLint, and SonarQube
    Avatar of Andrew Gatenby
    Andrew Gatenby uses Code ClimateCode Climate

    We use it as part of CI process to check code quality, to ensure that we're not inadvertently making common mistakes and can keep the smells and scope of code changes in line and clean. Having this step here should make future support and additions much more efficient and easy to understand.

    Avatar of Volkan 脰z莽elik
    Volkan 脰z莽elik uses ESLintESLint

    JavaScript is a language that works wonders when there are tools like ESLint, Prettier, and FlowType that cover your back.

    I use my IDE鈥檚 (Visual Studio Code) ESLint integration to validate the code I write in realtime.

    Avatar of Jack Littleton
    Jack Littleton uses ESLintESLint

    I use ESLint to ensure my JavaScript code meets my team's coding standards, and to avoid known pitfalls. The extensibility allows me to write specialized modules that detect team-specific issues as they occur.

    Avatar of Trusted Shops GmbH
    Trusted Shops GmbH uses SonarQubeSonarQube

    To increase our code quality and make vulnerabilities visible, we added SonarQube to our Git(lab) workflow, so every commit is analyzed and code flaws are shown directly at the Mergerequest.

    Avatar of Stefan Gojan
    Stefan Gojan uses Code ClimateCode Climate

    Check duplicate code, complexity and common pitfalls. Code coverage indicator for Github README file.

    Avatar of Promethean TV
    Promethean TV uses ESLintESLint

    ESLint is used in the build process for the Promethean TV Broadcast Center Tool.

    Avatar of Romans Malinovskis
    Romans Malinovskis uses Code ClimateCode Climate

    checking our repo code quality.

    Avatar of Ataccama
    Ataccama uses ESLintESLint

    A must-have tool to catch bugs and enforce a consistent code style.

    Avatar of Coolfront Technologies
    Coolfront Technologies uses ESLintESLint

    Code checking and normalization for Coolfront Mobile code-base.

    Avatar of Sascha Manns
    Sascha Manns uses