JSHint vs ShellCheck
JSHint
jshint.comShellCheck
shellcheck.netSide by side
| Figure | JSHint | ShellCheck |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | Yes | — |
| Web | Yes | Yes |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | Yes | — |
| Self-hosted | Yes | — |
| Plans published | 1 | 1 |
| Spec score · Linters | 8.7 (#3) | 7.6 (#24) |
| Editor integrations | The project lists integrations for Vim, Emacs, Sublime Text, Atom, TextMate, Visual Studio, VS Code, Brackets, Eclipse, NetBeans, JetBrains, Notepad++ and Gedit. | The project lists integrations for Vim, Emacs, Sublime, Pulsar Edit, and VS Code, with GCC error compatibility for other editors. |
| License | JSHint is licensed under the MIT Expat license. | ShellCheck is available under the GPLv3 license. |
| Purpose | JSHint is a community-driven static analysis tool that detects errors and potential problems in JavaScript code. | ShellCheck is a static analysis tool that gives warnings and suggestions for Bash and sh scripts. |
Plans
In their own words
JSHint
JSHint is a free, open-source static analysis tool for JavaScript. It checks code for syntax errors and potential problems such as implicit type conversion issues and leaking variables. The project aims to help JavaScript developers avoid typos and language gotchas while working on complex programs. JSHint is distributed as a Node module with a library and command-line program, and it can also be used through a JavaScript API. Configuration can come from command-line options, a .jshintrc file, package.json, or inline source directives. Standalone files are available for browser-like environments and Mozilla Rhino, with releases published to npm for Node.js. The install page lists integrations for editors and IDEs including Vim, Emacs, Sublime Text, Visual Studio, VS Code, Eclipse, and JetBrains IDEs, plus build integrations such as Grunt, Ant, Maven, pre-commit, and QUnit. JSHint is licensed under the MIT Expat license. Its documentation cautions that static analysis cannot determine whether a program is correct or fast, or whether it has memory leaks, and recommends using it alongside unit and functional tests and code reviews.
ShellCheck
ShellCheck is a free static analysis tool for Bash and sh scripts. It flags syntax problems, semantic issues, and subtle pitfalls that could make scripts fail in future circumstances, then offers warnings and suggestions. You can paste a script into ShellCheck.net or run it from a terminal with `shellcheck yourscript`.
The project lists integrations for Vim, Emacs, Sublime, Pulsar Edit, and VS Code, along with GCC-compatible warnings for other editors. It can also be added to builds or test suites, with support listed for services including Travis CI, Codacy, Code Climate, CodeFactor, CircleCI, GitHub Actions, and Trunk. Output options include JSON, CheckStyle-compatible XML, GCC-compatible warnings, and readable text with or without ANSI colors. Installation routes include package managers, precompiled binaries, Docker, and source compilation. ShellCheck is licensed under GPLv3; its wiki documents the tool, and bugs can be reported through GitHub issues. There are no official Apple Silicon binaries, and compiling from source requires 2 GB of RAM.