Documentation

Documentation to build on the Passmarked platform

Running our Tests locally

Passmarked was built with the idea to be usable as a simple tool for your development workflow but also on services like Jenkins with an API to integrate into your own code.

Community of developers

All the tests on the platform built by either the Passmarked team or one of our lovely community members, are open source. This allows anyone to look / document and help improve the checks.

The positive consequence of this is that all our tests can also be run locally on your own notebook/server. That gives users with very specific requirements and very high workloads the option to rather do the tests locally.

It should be noted that local tests do not benefit from our platform, which was built around the idea of crawling and running tests on sites. Meaning:

You'll need to manage your own infrastructure running our docker containers to perform the checks on websites. Which is quite easy actually :)
You'll have to build your own scraper to pull screenshots / palettes / the HAR and body content of pages. With tests like the SSL checks, the HAR/Page Content are not required. So this is very topical based on the test being run.
Services like our self-learning spell checker are not available, although the spellchecker does include a large list of open source dictionaries which would catch 90% of spelling errors.
The score itself is calculated from the weights of voted rules on our platform
No historical data analysis by the platform to determine when certain issues were found and seen.

Keeping in mind these restrictions and services that are not available, the value sits with tests like SSL which can run quick checks on local servers in internal networks as required, with a global set of maintained rules from the community.

Available Tests

Here is a list of available tests that can be downloaded and run on Passmarked. We will keep adding more as they are contributed and become available:

All of these modules listed make up our complete library of rules that are checked against websites. Enjoy !

The Passmarked Module

To run these tests, the global passmarked module provides an interface where the desired tests to run can be registered and executed.

To use this interface, first install the passmarked module using:

npm install passmarked [-g]

After which you'll be able to execute the downloaded tests as follows:

// pull in the module
var passmarked = require('passmarked');
// create a local context of rules to check
var runner = passmarked.createRunner(
  require('@passmarked/ssl'),
  require('@passmarked/malware'),
);
// execute the tests
runner.run({
  url: 'https://badssl.com'
}, function(err, rules) {
  // output the broken rules found
  console.dir(rules)
});

The rules are given back as an array with objects containing the following properties:

NameDescription
keyKey of the rule which will correlate to one of the listed rules on the README of the repo
messageFriendly user message that can be shown, with $ as placeholders for identifiers
identifiersArray of values to replace the placeholder in the message
occurrencesArray of occurrences of where precisely the rule was broken and information on how to display it

Go forth and build !

Signup icon
Ready to see how well your site scores?

Passmarked works best when you have an account. It allows you to keep a dashboard with saved data of the sites you have run through the system, we’ll alert you about important updates and you get access to the Passmarked Slack forum.

Sign up to get started