cats | array | List of category IDs. See [apps.json](https://github.com/ElbertF/Wappalyzer/blob/master/share/apps.json) for the complete list.
env | string | Global JavaScript variables, e.g. `jQuery`.
headers | object | HTTP Response headers, e.g. `X-Powered-By`.
html | string | Full HTML response body.
implies | array | The presence of one application can imply the presence of another, e.g. Drupal means PHP is also in use.
url | string | URL of the page, e.g. `http://wordpress.com/index.php`.
meta | object | HTML meta tags, e.g. `generator`.
script | string | `src` attribute of HTML script tags, e.g. `jquery.js`.
Except `cats`, all fields are optional.
Except `cats` and `implied` all fields accept one or more patterns (either a string or an array of regular expressions).
### Patterns
Patterns are case insensitive [regular expressions](https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions). No surrounding delimiters or flags are used.
Optional fields can be added, separated by `\\;`:
field | description
-----------|------------
confidence | Indicates less reliable patterns that may cause false positives. The aim is to achieve a combined confidence of 100%. Defaults to 100% for unspecified fields.
version | Gets the version number from a pattern match using a special syntax.
The confidence field can also be applied to the `implied` field.
#### Version syntax
example | description
-----------|------------
`\\1` | Returns the first match
`\\1?a:` | Returns `a` if the first match contains a value, nothing otherwise
`\\1?a:b` | Returns `a` if the first match contains a value, `b` otherwise
`\\1?:b` | Returns nothing if the first match contains a value, `b` otherwise
`foo\\1` | Returns `foo` with the first match appended.
## Drivers
Wappalyzer is multi-platform. The main code lives in the `share/` directory and
platform specific code in `drivers/`. The sections below describe how to set up
a development environment for the various existing drivers.
To keep files synchronised between drivers, run `links.sh` (UNIX-like systems)
or `links.cmd` (Windows).
### Mozilla Firefox
* Place a file called `wappalyzer@crunchlabz.com` in the extensions directory in
your [profile folder](http://kb.mozillazine.org/Profile_folder_-_Firefox)
(`~/.mozilla/firefox/xxxxx.default/extensions/` on Linux) containing the full
path to `drivers/firefox`.
* Restart Firefox
* Navigate to `about:config` and set `extensions.wappalyzer.debug` to `true`.
* Ctrl+Shift+J brings up a console for debugging.
### Google Chrome
* Navigate to `about:extensions`
*Licensed under the [GPL](https://github.com/ElbertF/Wappalyzer/blob/master/LICENSE).*