Open Source JavaScript Source Code Analysis Tools

JavaScript Source Code Analysis Tools

View 5656 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
  • 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
  • 1
    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: 715 This Week
    Last Update:
    See Project
  • 2
    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: 112 This Week
    Last Update:
    See Project
  • 3
    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: 249 This Week
    Last Update:
    See Project
  • 4
    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: 15 This Week
    Last Update:
    See Project
  • Gen AI apps are built with MongoDB Atlas Icon
    Gen AI apps are built with MongoDB Atlas

    The database for AI-powered applications.

    MongoDB Atlas is the developer-friendly database used to build, scale, and run gen AI and LLM-powered apps—without needing a separate vector database. Atlas offers built-in vector search, global availability across 115+ regions, and flexible document modeling. Start building AI apps faster, all in one place.
    Start Free
  • 5
    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: 14 This Week
    Last Update:
    See Project
  • 6
    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: 14 This Week
    Last Update:
    See Project
  • 7
    stylelint

    stylelint

    A linter that helps you avoid errors and enforce conventions

    stylelint understands the latest CSS syntax including custom properties and level 4 selectors. Extracts embedded styles from HTML, markdown and CSS-in-JS object & template literals. Parses CSS-like syntaxes like SCSS, Sass, Less and SugarSS. Has over 170 built-in rules to catch errors, apply limits and enforce stylistic conventions. Supports plugins so you can create your own rules or make use of plugins written by the community. Automatically fixes the majority of stylistic violations. Itis well tested with over 15000 unit tests. Supports shareable configs that you can extend or create. It is unopinionated so that you can customize it to your exact needs. stylelint has a growing community and is used by Facebook, GitHub and WordPress. You can configure the built-in stylistic rules to allow both multi-line and single-line rules. The choice of when to use each belongs to the user.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 8
    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: 9 This Week
    Last Update:
    See Project
  • 9
    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: 8 This Week
    Last Update:
    See Project
  • Build Securely on Azure with Proven Frameworks Icon
    Build Securely on Azure 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-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: 8 This Week
    Last Update:
    See Project
  • 11
    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: 7 This Week
    Last Update:
    See Project
  • 12
    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: 7 This Week
    Last Update:
    See Project
  • 13
    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: 6 This Week
    Last Update:
    See Project
  • 14
    unfetch

    unfetch

    Bare minimum 500b fetch polyfill

    Tiny 500b fetch "barely-polyfill". With a module bundler like rollup or webpack, you can import unfetch to use in your code without modifying any globals. While one of Unfetch's goals is to provide a familiar interface, its API may differ from other fetch polyfills/ponyfills. One of the key differences is that Unfetch focuses on implementing the fetch() API, while offering minimal (yet functional) support to the other sections of the Fetch spec, like the Headers class or the Response class. Uses simple arrays instead of iterables, since arrays are iterables. No streaming, just Promisifies existing XMLHttpRequest response bodies. Use in Node.JS is handled by isomorphic-unfetch.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 15
    CSSLint

    CSSLint

    Automated linting of cascading stylesheets

    CSSLint is an open-source CSS code quality tool originally written by Nicholas C. Zakas and Nicole Sullivan. A lint tool performs static analysis of source code and flags patterns that might be errors or otherwise cause problems for the developer. CSSLint is a tool to help point out problems with your CSS code. It does basic syntax checking as well as applying a set of rules to the code that look for problematic patterns or signs of inefficiency. The rules are all pluggable, so you can easily write your own or omit ones you don't want. You can integrate CSSLint into your favorite IDE to make checking your CSS code quality easy. In fact, some IDEs already have CSSLint built-in. Once you're familiar with the CSSLint command-line interface, the next step is to integrate it into your build system.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 16
    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: 3 This Week
    Last Update:
    See Project
  • 17
    plato

    plato

    JavaScript code visualization, static analysis, and complexity tool

    plato is a JavaScript source code visualization, static analysis, and complexity tool. Visualize JavaScript source complexity with plato.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 18
    Node.js express.js MongoDB JWT REST API

    Node.js express.js MongoDB JWT REST API

    Node.js express.js MongoDB JWT REST API - Basic Project Skeleton

    This is a basic API REST skeleton written on JavaScript using async/await. Great for building a starter web API for your front-end (Android, iOS, Vue, react, angular, or anything that can consume an API) This project is created to help other developers create a basic REST API in an easy way with Node.js. This basic example shows how powerful and simple JavaScript can be. Do you want to contribute? Pull requests are always welcome to show more features. Custom email/password user system with basic security and blocking for preventing brute force attacks. Login access log with IP, browser and country location (for country it looks for the header cf-ipcountry that CloudFlare creates when protecting your website). NPM script for keeping good source code formatting using prettier and ESLint. JWT Tokens, make requests with a token after login with the Authorization header with value Bearer yourToken where yourToken is the signed and encrypted token given in the response.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 19
    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: 2 This Week
    Last Update:
    See Project
  • 20
    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: 2 This Week
    Last Update:
    See Project
  • 21
    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
  • 22
    Restangular

    Restangular

    AngularJS service to handle Rest API Restful Resources

    Restangular is an AngularJS service that simplifies common GET, POST, DELETE, and UPDATE requests with a minimum of client code. It's a perfect fit for any WebApp that consumes data from a RESTful API. Note This version of Restangular only supports Angular 1. For an Angular 2+ version of Restangular, check out ngx-restangular. It's a separate project with different maintainers, so issues regarding ngx-restangular should be reported over there. Learn Restangular! Try the live demo on plunkr. It uses the same example as the official Angular Javascript Project, but with Restangular! With $resource, you need to write the URL Template. In here, you don't write any urls. You just write the name of the resource you want to fetch and that's it. You don't have to know the URL, the path, or anything to do all of the HTTP operations you want. You can create your own methods to run the operation that you want. The sky is the limit.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    Walt

    Walt

    Walt is a JavaScript-like syntax for WebAssembly text format

    Walt is an alternative syntax for WebAssembly text format. It's an experiment for using JavaScript syntax to write to as 'close to the metal' as possible. It's JavaScript with rules. .walt files compile directly to WebAssembly binary format. Writing zero-overhead, optimized WebAssembly is pretty tough to do. The syntax for .wat files is terse and difficult to work with directly. If you do not wish to use a systems language like C or Rust, then you're kind of out of luck. Your best bet (currently) is to write very plain C code, compile that to .wast and then optimize that result. Then you're ready to compile that into the final WebAssembly binary. Provide a thin layer of syntax sugar on top of .wat text format. Preferably porting as much of JavaScript syntax to WebAssembly as possible. This improved syntax should give direct control over the WebAssembly output. Meaning there should be minimal to none post-optimization to be done to the waste code generated.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    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
  • 25
    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: 1 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • Next
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.