Open Source JavaScript Source Code Analysis Tools

JavaScript Source Code Analysis Tools

View 5795 business solutions

Browse free open source JavaScript Source Code Analysis Tools and projects below. Use the toggles on the left to filter open source JavaScript Source Code Analysis Tools by OS, license, language, programming language, and project status.

  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • Gen AI apps are built with MongoDB Atlas Icon
    Gen AI apps are built with MongoDB Atlas

    Build gen AI apps with an all-in-one modern database: MongoDB Atlas

    MongoDB Atlas provides built-in vector search and a flexible document model so developers can build, scale, and run gen AI apps without stitching together multiple databases. From LLM integration to semantic search, Atlas simplifies your AI architecture—and it’s free to get started.
    Start Free
  • 1
    Blockly

    Blockly

    The web-based visual programming editor

    The Blockly library adds an editor to your app that represents coding concepts as interlocking blocks. It outputs syntactically correct code in the programming language of your choice. Custom blocks may be created to connect to your own application. Blockly in a browser allows web pages to include a visual code editor for any of Blockly's five supported programming languages, or your own. Blockly plugins are self-contained pieces of code that add functionality to Blockly. Blockly codelabs provide step-by-step instructions on how to use and customize Blockly. From a user's perspective, Blockly is an intuitive, visual way to build code. From a developer's perspective, Blockly is a ready-made UI for creating a visual language that emits syntactically correct user-generated code. Blockly can export blocks to many programming languages.
    Downloads: 70 This Week
    Last Update:
    See Project
  • 2
    A Notepad++ plugin that allows users to run JSLint (The JavaScript Code Quality Tool) against their open JavaScript files (more about JSLint at http://www.jslint.com/lint.html). Also supports JSHint (http://www.jshint.com/).
    Leader badge
    Downloads: 483 This Week
    Last Update:
    See Project
  • 3
    Iosevka

    Iosevka

    Versatile typeface for code, from code

    Iosevka is an open-source, sans-serif + slab-serif, monospace + quasi‑proportional typeface family, designed for writing code, using in terminals, and preparing technical documents. The Iosevka’s monospace family is provided in a slender outfit by default: glyphs are exactly 1/2em wide. Compared to the competitors, you could fit more columns within the same screen width. Iosevka provides two widths, Normal and Extended. If you prefer more breeze between the character, choose Extended and enjoy. Terminal emulators have a stricter compatibility requirements for fonts. Therefore, Iosevka and Iosevka Slab all contain two specialized families, Term and Fixed, targeting terminal users. In these families, the symbols will be narrower to follow terminals’ ideology of column count. In the Fixed families, the ligation will be disabled to ensure better compatibility in certain environments.
    Downloads: 36 This Week
    Last Update:
    See Project
  • 4
    eslint-config

    eslint-config

    Anthony's ESLint config presets

    Anthony's ESLint config presets. Auto fix for formatting (aimed to be used standalone without Prettier). Designed to work with TypeScript, Vue out-of-box. Lint also for json, yaml, markdown. Sorted imports, dangling commas for cleaner commit diff. Reasonable defaults, best practices, only one-line of config.
    Downloads: 8 This Week
    Last Update:
    See Project
  • Grafana: The open and composable observability platform Icon
    Grafana: The open and composable observability platform

    Faster answers, predictable costs, and no lock-in built by the team helping to make observability accessible to anyone.

    Grafana is the open source analytics & monitoring solution for every database.
    Learn More
  • 5
    jscodeshift

    jscodeshift

    A JavaScript codemod toolkit

    jscodeshift is a toolkit for running codemods over multiple JavaScript or TypeScript files. It provides A runner, which executes the provided transform for each file passed to it. It also outputs a summary of how many files have (not) been transformed. A wrapper around recast, providing a different API. Recast is an AST-to-AST transform tool and also tries to preserve the style of original code as much as possible. As already mentioned, jscodeshift also provides a wrapper around recast. In order to properly use the jscodeshift API, one has to understand the basic building blocks of recast (and ASTs) as well. An AST node is a plain JavaScript object with a specific set of fields, in accordance with the Mozilla Parser API. The primary way to identify nodes is via their type. It's OK to not know the structure of every AST node type. The (esprima) AST explorer is an online tool to inspect the AST for a given piece of JS code.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 6
    postcss-cssnext

    postcss-cssnext

    PostCSS plugin that helps you to use the latest CSS syntax

    PostCSS-cssnext is a PostCSS plugin that helps you to use the latest CSS syntax today. It transforms CSS specs into more compatible CSS so you don’t need to wait for browser support.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 7
    Commander.js

    Commander.js

    node.js command-line interfaces made easy

    The complete solution for node.js command-line interfaces. Commander exports a global object which is convenient for quick programs. For larger programs which may use commander in multiple ways, including unit testing, it is better to create a local Command object to use. Each option can have a short flag (single character) and a long name, separated by a comma or space or vertical bar ('|'). Multiple short flags may optionally be combined in a single argument following the dash: boolean flags, followed by a single option taking a value (possibly followed by the value). You may specify a function to do custom processing of option-arguments. The callback function receives two parameters, the user specified option-argument and the previous value for the option. It returns the new value for the option. This allows you to coerce the option-argument to the desired type, or accumulate values, or do entirely custom processing.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 8
    HTMLHint

    HTMLHint

    The static code analysis tool you need for your HTML

    Static code analysis tool you need for your HTML. By default, htmlhint looks for a .htmlhintrc file in the current directory and all parent directories and applies its rules when parsing a file.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 9
    Lebab

    Lebab

    Turn your ES5 code into readable ES6

    Turn your ES5 code into readable ES6. Lebab does the opposite of what Babel does. Lebab transpiles your ES5 code to ES6/ES7. It does exactly the opposite of what Babel does. Convert your old-fashioned code using the lebab cli tool, enabling a specific transformation. The recommended way of using Lebab is to apply one transform at a time, read what exactly the transform does and what are its limitations, apply it to your code and inspect the diff carefully. Transforms can be applied with relatively high confidence. They use pretty straightforward and strict rules for changing the code. The resulting code should be almost 100% equivalent to the original code. Transforms should be applied with caution. They either use heuristics that can't guarantee that the resulting code is equivalent of the original code, or they have significant bugs which can result in breaking your code.
    Downloads: 3 This Week
    Last Update:
    See Project
  • Build Securely on AWS with Proven Frameworks Icon
    Build Securely on AWS with Proven Frameworks

    Lay a foundation for success with Tested Reference Architectures developed by Fortinet’s experts. Learn more in this white paper.

    Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
    Download Now
  • 10
    eslint-plugin-flowtype

    eslint-plugin-flowtype

    Flow type linting rules for ESLint

    Flow type linting rules for ESLint. This plugin exports a recommended configuration that enforces Flow type good practices. To enable this configuration use the extends property in your .eslintrc config file. ESLint is designed to be flexible and configurable for your use case. You can turn off every rule and run only with basic syntax validation or mix and match the bundled rules and your custom rules to fit the needs of your project. There are two primary ways to configure ESLint. Use JavaScript comments to embed configuration information directly into a file. Use a JavaScript, JSON, or YAML file to specify configuration information for an entire directory and all of its subdirectories. This can be in the form of a .eslintrc.* file or an eslintConfig field in a package.json file, both of which ESLint will look for and read automatically, or you can specify a configuration file on the command line.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 11
    eslint-plugin-jsdoc

    eslint-plugin-jsdoc

    JSDoc specific linting rules for ESLint

    JSDoc specific linting rules for ESLint. Install ESLint either locally or globally. Rules may, as per the ESLint user guide, have their own individual options. In eslint-plugin-jsdoc, a few options, such as, exemptedBy and contexts, may be used across different rules. eslint-plugin-jsdoc options, if present, are generally in the form of an object supplied as the second argument in an array after the error level (any exceptions to this format are explained within that rule's docs). One can use minLines and maxLines to indicate how many line breaks (if any) will be checked to find a jsdoc comment block before the given code block. These settings default to 0 and 1 respectively. In conjunction with the require-jsdoc rule, these settings can be enforced so as to report problems if a jsdoc block is not found within the specified boundaries. The settings are also used in the fixer to determine how many line breaks to add when a block is missing.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 12
    eslint-plugin-unicorn

    eslint-plugin-unicorn

    More than 100 powerful ESLint rules

    More than 100 powerful ESLint rules. You might want to check out XO, which includes this plugin. Each rule has emojis denoting if it belongs to the recommended configuration if some problems reported by the rule are automatically fixable by the --fix command line option, or if some problems reported by the rule are manually fixable by editor suggestions. Use a preset config or configure each rules in package.json.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 13
    rest.js

    rest.js

    GitHub REST API client for JavaScript

    GitHub REST API client for JavaScript. Import the Octokit constructor based on your platform. Instantiate your octokit API. All options are optional, but authentication is strongly encouraged. API Previews can be enabled globally by setting the previews option. They can be set per-request as well. A default time zone can be enabled by setting the timeZone option. In order to use Octokit with GitHub Enterprise, set the baseUrl option. Most of GitHub’s REST API endpoints have matching methods. All endpoint methods are asynchronous, in order to use await in the code examples, we wrap them into an anonymous async function. Authentication is optional for some REST API endpoints accessing public data, but is required for GraphQL queries. Using authentication also increases your API rate limit.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 14
    Webpack 5 Boilerplate Template

    Webpack 5 Boilerplate Template

    Simple starter webpack 5 project template

    Simple starter webpack 5 project template supporting SASS/PostCSS, Babel ES7, browser syncing, code linting. Easy project setup having multiple features and developer-friendly tools. Support for source code syntax style and formatting linters that analyze source code to flag any programming errors, bugs, stylistic errors or suspicious constructs. Smart preset that allows you to use the latest JavaScript without needing to micromanage which syntax transforms (and optionally, browser polyfills) are needed by your target environment(s). Start development of a project right away with simple, configured, linter-enabled, browser-synced asset files. Integration with Webpack Bundle Analyzer - Visualize size of webpack output files with an interactive zoomable treemap. Configured and ready to use Webpack Dev Server plugin for faster local development.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 15
    eslint-plugin-import

    eslint-plugin-import

    ESLint plugin with rules that help validate proper imports.

    This plugin intends to support linting of ES2015+ (ES6+) import/export syntax, and prevent issues with misspelling of file paths and import names. All the goodness that the ES2015+ static module syntax intends to provide, is marked up in your editor. The maintainers of eslint-plugin-import and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open-source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. With the advent of module bundlers and the current state of modules and module syntax specs, it's not always obvious where import x from 'module' should look to find the file behind module. Up through v0.10ish, this plugin has directly used substack's resolve plugin, which implements Node's import behavior. This works pretty well in most cases.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 16
    eslint-plugin-jsx-a11y

    eslint-plugin-jsx-a11y

    Static AST checker for a11y rules on JSX elements

    Static AST checker for accessibility rules on JSX elements. This plugin does a static evaluation of the JSX to spot accessibility issues in React apps. Because it only catches errors in static code, use it in combination with axe-core/react to test the accessibility of the rendered DOM. Consider these tools just as one step of a larger a11y testing process and always test your apps with assistive technology. If you installed ESLint globally (using the -g flag in npm, or the global prefix in yarn) then you must also install eslint-plugin-jsx-a11y globally. To enable your custom components to be checked as DOM elements, you can set global settings in your configuration file by mapping each custom component name to a DOM element type. Enforce all elements that require alternative text have meaningful information to relay back to the end user.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 17
    Feflow

    Feflow

    How to write cross-platform Node.js code

    How to write cross-platform Node.js code. Why you should care: according to the 2018 Node.js user survey, 24% of Node.js developers use Windows locally and 41% use Mac. In production, 85% use Linux and 1% use BSD. Installers for each major OS are available on the Node.js website. To install, switch and update Node.js versions nvm can be used on Linux/Mac. It does not support Windows but nvm-windows, nvs and ps-nvm (for PowerShell) are alternatives that do. nve can be used to run a single command with one or several different Node.js versions. nvexeca can be used to do the same programmatically. The character encoding can be specified using an encoding option with most relevant Node.js core methods. While ASCII characters display correctly on all terminals, this is not the case for all characters.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    JSHint

    JSHint

    A tool that helps to detect errors and in your JavaScript code

    JSHint is a community-driven tool that detects errors and potential problems in JavaScript code. Since JSHint is so flexible, you can easily adjust it in the environment you expect your code to execute. JSHint is publicly available and will always stay this way. The project aims to help JavaScript developers write complex programs without worrying about typos and language gotchas. Any code base eventually becomes huge at some point, so simple mistakes, that would not show themselves when written, can become show stoppers and add extra hours of debugging. So, static code analysis tools come into play and help developers spot such problems. JSHint scans a program written in JavaScript and reports about commonly made mistakes and potential bugs. The potential problem could be a syntax error, a bug due to an implicit type conversion, a leaking variable, or something else entirely.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    Polacode

    Polacode

    Polaroid for your code

    Use polacode.target, polacode.shadow, polacode.transparentBackground and polacode.backgroundColor to control image appearance. You have spent countless hours finding the perfect JavaScript grammar, matching it with a sleek-looking VS Code theme, trying out all the best programming fonts. You take three days porting over your theme before starting to use VS Code. You shell out $200 for italic cursive html attributes. The code has to look right.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    Prepack

    Prepack

    A JavaScript bundle optimizer

    A tool for making JavaScript code run faster. Prepack is still in an early development stage and not ready for production use just yet. Please try it out, give feedback, and help fix bugs. Prepack is a tool that optimizes JavaScript source code: Computations that can be done at compile-time instead of run-time get eliminated. Prepack replaces the global code of a JavaScript bundle with equivalent code that is a simple sequence of assignments. This gets rid of most intermediate computations and object allocations. Prepack operates at the AST level, using Babel to parse and generate JavaScript source code. At the core of Prepack is an almost ECMAScript 5 compatible interpreter — implemented in JavaScript! The interpreter closely follows the ECMAScript 2016 Language Specification, with a focus on correctness and spec conformance. You can think of the interpreter in Prepack as a clean reference implementation of JavaScript.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    SyntaxHighlighter

    SyntaxHighlighter

    Self-contained code syntax highlighter developed in JavaScript

    SyntaxHighlighter is THE client side highlighter for the web and web-apps! It's been around since 2004 and it's used virtually everywhere to seamlessly highlight code for presentation purposes. The history of this project predates majority of the common web technologies and it has been a challenge to dedicate time and effort to keep it up to date. Everything used to be in one file and assign window variables. SyntaxHighlighter is currently used and has been used in the past by Microsoft, Apache, Mozilla, Yahoo, Wordpress, Bug Labs, Freshbooks and many other companies and blogs. As it always goes with open source, you are welcome to use SyntaxHighlighter free of charge.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    eslint-config-alloy

    eslint-config-alloy

    Progressive ESLint config for your React/Vue/TypeScript projects

    Progressive ESLint config for your React/Vue/TypeScript projects. The AlloyTeam ESLint config is not only a progressive ESLint config for your React/Vue/TypeScript projects but also the best reference for configuring your personalized ESLint rules. Let Prettier handle style-related rules. Inherit ESLint's philosophy and help everyone build their own rules. High degree of automation: advanced rules management, test as a document, as a website. Keep up with the times, follow up the latest rules as soon as possible. It is recommended to use npm init vue@3 to create a project with Vue, TypeScript and ESLint integrated. Our team initially used Airbnb rules, but because it was too strict, some rules still needed to be personalized, which led to more and more changes in the future and finally decided to maintain a new set. After more than four years of maintaining, eslint-config-alloy is now very mature and progressive and has been welcomed by many teams inside and outside the company.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    eslint-plugin-node

    eslint-plugin-node

    Additional ESLint's rules for Node.js

    Additional ESLint's rules for Node.js. plugin:node/recommended considers both CommonJS and ES Modules. If "type":"module" field existed in package.json then it considers files as ES Modules. Otherwise it considers files as CommonJS. In addition, it considers *.mjs files as ES Modules and *.cjs files as CommonJS. plugin:node/recommended-module considers all files as ES Modules. plugin:node/recommended-script considers all files as CommonJS.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    eslint-plugin-vue

    eslint-plugin-vue

    ESLint plugin for Vue.js

    ESLint plugin for Vue.js. This plugin allows us to check the template and script of .vue files with ESLint, as well as Vue code in .js files. This plugin supports the basic syntax of Vue.js 3.2, script setup, and CSS variable injection, but the ref sugar, an experimental feature of Vue.js 3.2, is not yet supported. If you have issues with these, please also refer to the FAQ. If you can't find a solution, search for the issue and if the issue doesn't exist, open a new issue. Be aware that depending on the code samples you write in tests, the RuleTester parser property must be set accordingly (this can be done on a test-by-test basis). The default JavaScript parser must be replaced because Vue.js single file components are not plain JavaScript, but a custom file format. vue-eslint-parser is a replacement parser that generates an enhanced AST with nodes that represent specific parts of the template syntax, as well as the contents of the script tag.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 25
    node-rs

    node-rs

    Node.js bindings Rust crates

    When Node.js meets Rust. Make rust crates binding to Node.js use napi-rs.
    Downloads: 1 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • Next