Skip to content
JavaScript CSS HTML
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
fonts zeroclip plugin deleted Jul 1, 2015
stylus Changes tooltip positioning for Chrome based browsers Dec 17, 2019
test Fix unit tests Aug 23, 2019
views Merge branch 'master' of Feb 13, 2020
.deployment-trigger Deployment test Oct 1, 2018
.travis.yml Deployment test: disable Travis cache. Jun 8, 2018
CNAME Create CNAME Mar 10, 2014
LICENSE.txt Update licence. Jun 8, 2018
manifest.json update browser plugin version Jan 21, 2020
package.json update browser plugin version Jan 21, 2020
server.js Stop AB test Oct 30, 2019
webpack.extension-dev.js Update to Webpack 4. Mar 5, 2018
webpack.extension-prod.js Update to Webpack 4. Mar 5, 2018 Fix metrics key selection. Sep 28, 2018 Metrics appear to be working locally. Sep 28, 2018

Build Status

How to add a library

To add a library, simply edit the right JSON file located at views/website/libraries. Each language gets its own file. Multiple libraries share the same language file.

To add a new language, simply add a JSON file in the same folder as the others. It will get automatically recognized. If you add a new language, you will need to provide a proper icon for it and place it in the img folder.

Here's a commented example of the .NET language file (0-.NET.json). All fields must have valid values unless noted:

  // Language name (unique)
  "name": ".NET",

  // Unique identifier that will be used as a CSS class
  // for this language (only valid CSS class names).
  "uniqueClass": "net",

  // The language icon, SVG format preferred, should be placed
  // in /img directory.
  "image": "/img/1.svg",

  // The color of header that displays the name of the language
  // and the icon. This is a valid CSS color definition.
  "bgColor": "rgb(42, 168, 229)",

  // An array of libraries for this language.
  "libs": [
      // In case the library suffered from a vulnerability, the
      // minimum version in which the vuln was fixed must be
      // listed here. Optional (can be null).
      "minimumVersion": "1.0.1", // or null

      // Supported features, true for supported,
      // false for not supported.
      "support": {
        "sign": true,
        "verify": true,
        "iss": true,
        "sub": true,
        "aud": true,
        "exp": true,
        "nbf": true,
        "iat": true,
        "jti": true,
        "hs256": true,
        "hs384": true,
        "hs512": true,
        "rs256": true,
        "rs384": true,
        "rs512": true,
        "es256": true,
        "es384": true,
        "es512": true,
        "ps256": true,
        "ps384": true,
        "ps512": true,
        "eddsa": true

      // Author URL, can be GitHub profile, personal page
      // company page, etc. Can be null.
      "authorUrl": "", // or null

      // Author name.
      "authorName": "Microsoft",

      // For the star count, this is the GitHub repository path,
      // (usually user/repo). Can be null (no star count shown).
      "gitHubRepoPath": "AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet", // or null

      // URL for source code.
      "repoUrl": "",

      // Install command, can be HTML or plain text.
      "installCommandHtml": "Install-Package<br><a href=\"\">System.IdentityModel.Tokens.Jwt</a>"

How to build

First, install the required dependencies:

npm install

In order to build (and run) the project execute:


You will find the generated files in the dist directory. For the website, you can run a server at its root. For example: http-server dist/website. The default grunt task runs a server at and watches for changes.

To run tests, execute:

./node_modules/.bin/grunt test

Look at the end of the Gruntfile for other common tasks.

Happy hacking!

You can’t perform that action at this time.