**[Wappalyzer](https://www.wappalyzer.com) identifies technologies on websites, such as CMS, web frameworks, ecommerce platforms, JavaScript libraries, analytics tools and [more](https://www.wappalyzer.com/technologies).**
If you don't have time to configure, host, debug and maintain your own infrastructure to analyse websites at scale, we offer a SaaS solution that has all the same capabilities and a lot more. Our [apps](https://www.wappalyzer.com/apps/) and [APIs](https://www.wappalyzer.com/api/) not only reveal the technology stack a website uses but also company and contact details, social media profiles, keywords and metadata.
## Prerequisites
@ -92,6 +94,7 @@ Patterns (regular expressions) are kept in [`src/technologies.json`](https://git
"css": "\\.example-class",
"robots": "Disallow: /unique-path/",
"implies": "PHP\\;confidence:50",
"requires": "WordPress",
"meta": {
"generator": "(?:Example|Another Example)"
},
@ -224,8 +227,7 @@ Plus any of:
</tbody>
</table>
### Implies and excludes (optional)
### Implies, requires and excludes (optional)
<table>
<thead>
@ -246,6 +248,14 @@ Plus any of:
</td>
<td><code>"PHP"</code></td>
</tr>
<tr>
<td><code>requires</code></td>
<td>String | Array</td>
<td>
Similar to implies but detection only runs if the required technology has been identified. Useful for themes for a specific CMS.
</td>
<td><code>"WordPres"</code></td>
</tr>
<tr>
<td><code>excludes</code></td>
<td>String | Array</td>
@ -395,7 +405,6 @@ Patterns are essentially JavaScript regular expressions written as strings, but
Tags (a non-standard syntax) can be appended to patterns (and implies and excludes, separated by `\\;`) to store additional information.
<table>
<thead>
<tr>
@ -433,7 +442,6 @@ Tags (a non-standard syntax) can be appended to patterns (and implies and exclud
Application version information can be obtained from a pattern using a capture group. A condition can be evaluated using the ternary operator (`?:`).