commit
a17a8949ff
@ -1,122 +1,122 @@
|
||||
Wappalyzer
|
||||
==========
|
||||
|
||||
[Wappalyzer](http://wappalyzer.com/) is a
|
||||
[browser extension](http://wappalyzer.com/download) that uncovers the
|
||||
technologies used on websites. It detects
|
||||
[content management systems](http://wappalyzer.com/categories/cms),
|
||||
[web shops](http://wappalyzer.com/categories/web-shops),
|
||||
[web servers](http://wappalyzer.com/categories/web-servers),
|
||||
[JavaScript frameworks](http://wappalyzer.com/categories/javascript-frameworks),
|
||||
[analytics tools](http://wappalyzer.com/categories/analytics) and
|
||||
[many more](http://wappalyzer.com/applications).
|
||||
|
||||
|
||||
Contributing
|
||||
------------
|
||||
|
||||
**Adding a new application**
|
||||
|
||||
* Edit `share/apps.json`
|
||||
* Add a 16x16 PNG image to `share/images/icons` matching the application name.
|
||||
* Provide the URL to the application's website when submitting a pull request.
|
||||
|
||||
Example:
|
||||
|
||||
```javascript
|
||||
"Application Name": {
|
||||
cats: [ "1" ],
|
||||
headers: { "X-Powered-By": "Application Name" },
|
||||
url: ".+\\.application-name\\.com",
|
||||
html: "<link[^>]application-name\\.css",
|
||||
meta: { "generator": "Application Name" },
|
||||
script: "application-name\\.js",
|
||||
env: "ApplicationName",
|
||||
implies: [ "PHP" ]
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
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 the `links.sh` script (UNIX-like
|
||||
system only, Windows user will have to manually copy the files across.)
|
||||
|
||||
|
||||
**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**
|
||||
|
||||
The Chrome version needs some love, if anyone wants to pick it up. It's
|
||||
currently not as feature-rich as the Firefox add-on (although partially due to
|
||||
API limitations.)
|
||||
|
||||
* Navigate to `about:extensions`
|
||||
* Check "Developer mode"
|
||||
* Click "Load unpacked extension..."
|
||||
* Select `drivers/chrome/`
|
||||
|
||||
|
||||
**Bookmarklet**
|
||||
|
||||
Beta version available for testing at [wappalyzer.com/bookmarklet](http://wappalyzer.com/bookmarklet).
|
||||
|
||||
|
||||
**HTML**
|
||||
|
||||
The HTML driver serves purely as an example. It's a good starting point if you
|
||||
want to port Wappalyzer to a new platform.
|
||||
|
||||
* Navigate to `drivers/html/`
|
||||
|
||||
|
||||
**PHP**
|
||||
|
||||
The PHP driver requires the [V8js](http://php.net/manual/en/book.v8js.php) class. Installing V8js
|
||||
using [PECL](http://pecl.php.net/) on Debian Linux or Ubuntu should be very straight forward:
|
||||
|
||||
* `# aptitude install php5-dev php-pear libv8-dev`
|
||||
* `# pecl install channel://pecl.php.net/v8js-0.1.3`
|
||||
* `# echo "extension=v8js.so" > /etc/php5/conf.d/v8js.ini`
|
||||
|
||||
Runnning Wappalyzer from the command line:
|
||||
|
||||
`$ php drivers/php/index.php wappalyzer.com`
|
||||
|
||||
Running Wappalyzer inside a PHP script:
|
||||
|
||||
```php
|
||||
require('WappalyzerException.php');
|
||||
require('Wappalyzer.php');
|
||||
|
||||
$wappalyzer = new Wappalyzer($url);
|
||||
|
||||
$detectedApps = $wappalyzer->analyze();
|
||||
```
|
||||
|
||||
|
||||
**Mozilla Jetpack**
|
||||
|
||||
Work in progress, experimental. See https://wiki.mozilla.org/Jetpack.
|
||||
|
||||
|
||||
Screenshot
|
||||
----------
|
||||
|
||||
Wappalyzer on Firefox:
|
||||
|
||||
![Screenshot](http://wappalyzer.com/sites/default/themes/wappalyzer/images/installed.png)
|
||||
Wappalyzer
|
||||
==========
|
||||
|
||||
[Wappalyzer](http://wappalyzer.com/) is a
|
||||
[browser extension](http://wappalyzer.com/download) that uncovers the
|
||||
technologies used on websites. It detects
|
||||
[content management systems](http://wappalyzer.com/categories/cms),
|
||||
[web shops](http://wappalyzer.com/categories/web-shops),
|
||||
[web servers](http://wappalyzer.com/categories/web-servers),
|
||||
[JavaScript frameworks](http://wappalyzer.com/categories/javascript-frameworks),
|
||||
[analytics tools](http://wappalyzer.com/categories/analytics) and
|
||||
[many more](http://wappalyzer.com/applications).
|
||||
|
||||
|
||||
Contributing
|
||||
------------
|
||||
|
||||
**Adding a new application**
|
||||
|
||||
* Edit `share/apps.json`
|
||||
* Add a 16x16 PNG image to `share/images/icons` matching the application name.
|
||||
* Provide the URL to the application's website when submitting a pull request.
|
||||
|
||||
Example:
|
||||
|
||||
```javascript
|
||||
"Application Name": {
|
||||
cats: [ "1" ],
|
||||
headers: { "X-Powered-By": "Application Name" },
|
||||
url: ".+\\.application-name\\.com",
|
||||
html: "<link[^>]application-name\\.css",
|
||||
meta: { "generator": "Application Name" },
|
||||
script: "application-name\\.js",
|
||||
env: "ApplicationName",
|
||||
implies: [ "PHP" ]
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
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 the `links.sh` script (UNIX-like
|
||||
systems only, Windows users can use `links.cmd`.)
|
||||
|
||||
|
||||
**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**
|
||||
|
||||
The Chrome version needs some love, if anyone wants to pick it up. It's
|
||||
currently not as feature-rich as the Firefox add-on (although partially due to
|
||||
API limitations.)
|
||||
|
||||
* Navigate to `about:extensions`
|
||||
* Check "Developer mode"
|
||||
* Click "Load unpacked extension..."
|
||||
* Select `drivers/chrome/`
|
||||
|
||||
|
||||
**Bookmarklet**
|
||||
|
||||
Beta version available for testing at [wappalyzer.com/bookmarklet](http://wappalyzer.com/bookmarklet).
|
||||
|
||||
|
||||
**HTML**
|
||||
|
||||
The HTML driver serves purely as an example. It's a good starting point if you
|
||||
want to port Wappalyzer to a new platform.
|
||||
|
||||
* Navigate to `drivers/html/`
|
||||
|
||||
|
||||
**PHP**
|
||||
|
||||
The PHP driver requires the [V8js](http://php.net/manual/en/book.v8js.php) class. Installing V8js
|
||||
using [PECL](http://pecl.php.net/) on Debian Linux or Ubuntu should be very straight forward:
|
||||
|
||||
* `# aptitude install php5-dev php-pear libv8-dev`
|
||||
* `# pecl install channel://pecl.php.net/v8js-0.1.3`
|
||||
* `# echo "extension=v8js.so" > /etc/php5/conf.d/v8js.ini`
|
||||
|
||||
Runnning Wappalyzer from the command line:
|
||||
|
||||
`$ php drivers/php/index.php wappalyzer.com`
|
||||
|
||||
Running Wappalyzer inside a PHP script:
|
||||
|
||||
```php
|
||||
require('WappalyzerException.php');
|
||||
require('Wappalyzer.php');
|
||||
|
||||
$wappalyzer = new Wappalyzer($url);
|
||||
|
||||
$detectedApps = $wappalyzer->analyze();
|
||||
```
|
||||
|
||||
|
||||
**Mozilla Jetpack**
|
||||
|
||||
Work in progress, experimental. See https://wiki.mozilla.org/Jetpack.
|
||||
|
||||
|
||||
Screenshot
|
||||
----------
|
||||
|
||||
Wappalyzer on Firefox:
|
||||
|
||||
![Screenshot](http://wappalyzer.com/sites/default/themes/wappalyzer/images/installed.png)
|
||||
|
@ -0,0 +1,133 @@
|
||||
:: ln == mklink /h
|
||||
:: hard link folders (dir junction) = mklink /j dir1 dir2
|
||||
:: hard link files = mklink /h
|
||||
:: ln -f for folder: if exist FOLDER_TO_REPLACE_WITH_LINK rmdir /s FOLDER_TO_REPLACE_WITH_LINK&&mklink /j FOLDER_TO_REPLACE_WITH_LINK FOLDER_TO_LINK_TO
|
||||
:: ln -f for file: if exist FILE_TO_REPLACE_WITH_LINK del FILE_TO_REPLACE_WITH_LINK&&mklink /h FILE_TO_REPLACE_WITH_LINK FILE_TO_LINK_TO
|
||||
|
||||
|
||||
:: FIREFOX ADD-ON
|
||||
::
|
||||
::Sync icons folder
|
||||
::ln -f share\images\icons\* drivers\firefox\skin\images\icons
|
||||
if exist drivers\firefox\skin\images\icons rmdir /q /s drivers\firefox\skin\images\icons
|
||||
mklink /j drivers\firefox\skin\images\icons share\images\icons\
|
||||
|
||||
::Sync lib folder
|
||||
::ln -f share\js\lib\jquery.min.js drivers\firefox\content\js\lib
|
||||
if exist drivers\firefox\content\js\lib rmdir /q /s drivers\firefox\content\js\lib
|
||||
mklink /j drivers\firefox\content\js\lib share\js\lib\
|
||||
|
||||
::Sync apps JSON
|
||||
::ln -f share\apps.json drivers\firefox\content
|
||||
if exist drivers\firefox\content\apps.json del drivers\firefox\content\apps.json
|
||||
mklink /h drivers\firefox\content\apps.json share\apps.json
|
||||
|
||||
::Sync Wappalyzer.js
|
||||
::ln -f share\js\wappalyzer.js drivers\firefox\content\js
|
||||
if exist drivers\firefox\content\js\wappalyzer.js del drivers\firefox\content\js\wappalyzer.js
|
||||
mklink /h drivers\firefox\content\js\wappalyzer.js share\js\wappalyzer.js
|
||||
|
||||
|
||||
|
||||
:: FIREFOX JETPACK
|
||||
::
|
||||
::Sync icons folder
|
||||
::ln -f share\images\icons\* drivers\firefox-jetpack\images\icons
|
||||
if exist drivers\firefox-jetpack\images\icons rmdir /q /s drivers\firefox-jetpack\images\icons
|
||||
mklink /j drivers\firefox-jetpack\images\icons share\images\icons
|
||||
|
||||
::Sync apps JSON
|
||||
::ln -f share\apps.json drivers\firefox-jetpack\data
|
||||
if exist drivers\firefox-jetpack\data\apps.json del drivers\firefox-jetpack\data\apps.json
|
||||
mklink /h drivers\firefox-jetpack\data\apps.json share\apps.json
|
||||
|
||||
::Sync Wappalyzer.js
|
||||
::ln -f share\js\wappalyzer.js drivers\firefox-jetpack\lib
|
||||
if exist drivers\firefox-jetpack\lib\wappalyzer.js del drivers\firefox-jetpack\lib\wappalyzer.js
|
||||
mklink /h drivers\firefox-jetpack\lib\wappalyzer.js share\js\wappalyzer.js
|
||||
|
||||
|
||||
|
||||
:: CHROME EXTENSION
|
||||
::
|
||||
::Sync icons folder
|
||||
::ln -f share\images\icons\* drivers\chrome\images\icons
|
||||
if exist drivers\chrome\images\icons rmdir /q /s drivers\chrome\images\icons
|
||||
mklink /j drivers\chrome\images\icons share\images\icons
|
||||
|
||||
::Sync lib folder
|
||||
::ln -f share\js\lib\jquery.min.js drivers\chrome\js\lib
|
||||
if exist drivers\chrome\js\lib rmdir /q /s drivers\chrome\js\lib
|
||||
mklink /j drivers\chrome\js\lib share\js\lib
|
||||
|
||||
::Sync apps JSON
|
||||
::ln -f share\apps.json drivers\chrome
|
||||
if exist drivers\chrome\apps.json del drivers\chrome\apps.json
|
||||
mklink /h drivers\chrome\apps.json share\apps.json
|
||||
|
||||
::Sync Wappalyzer.js
|
||||
::ln -f share\js\wappalyzer.js drivers\chrome\js
|
||||
if exist drivers\chrome\js\wappalyzer.js del drivers\chrome\js\wappalyzer.js
|
||||
mklink /h drivers\chrome\js\wappalyzer.js share\js\wappalyzer.js
|
||||
|
||||
|
||||
|
||||
:: BOOKMARKLET
|
||||
::
|
||||
::Sync icons folder
|
||||
::ln -f share\images\icons\* drivers\bookmarklet\images\icons
|
||||
if exist drivers\bookmarklet\images\icons rmdir /q /s drivers\bookmarklet\images\icons
|
||||
mklink /j drivers\bookmarklet\images\icons share\images\icons
|
||||
|
||||
::Sync lib folder
|
||||
::ln -f share\js\lib\jquery.min.js drivers\bookmarklet\js\lib
|
||||
if exist drivers\bookmarklet\js\lib rmdir /q /s drivers\bookmarklet\js\lib
|
||||
mklink /j drivers\bookmarklet\js\lib share\js\lib
|
||||
|
||||
::Sync apps JSON
|
||||
::ln -f share\apps.json drivers\bookmarklet\json
|
||||
if exist drivers\bookmarklet\json del drivers\bookmarklet\json
|
||||
mklink /h drivers\bookmarklet\json share\apps.json
|
||||
|
||||
::Sync Wappalyzer.js
|
||||
::ln -f share\js\wappalyzer.js drivers\bookmarklet\js
|
||||
if exist drivers\bookmarklet\js\wappalyzer.js del drivers\bookmarklet\js\wappalyzer.js
|
||||
mklink /h drivers\bookmarklet\js\wappalyzer.js share\js\wappalyzer.js
|
||||
|
||||
|
||||
|
||||
:: HTML DRIVER
|
||||
::
|
||||
::Sync icons folder
|
||||
::ln -f share\images\icons\* drivers\html\images\icons
|
||||
if exist drivers\html\images\icons rmdir /q /s drivers\html\images\icons
|
||||
mklink /j drivers\html\images\icons share\images\icons
|
||||
|
||||
::Sync lib folder
|
||||
::ln -f share\js\lib\jquery.min.js drivers\html\js\lib
|
||||
if exist drivers\html\js\lib rmdir /q /s drivers\html\js\lib
|
||||
mklink /j drivers\html\js\lib share\js\lib
|
||||
|
||||
::Sync apps JSON
|
||||
::ln -f share\apps.json drivers\html
|
||||
if exist drivers\html\apps.json del drivers\html\apps.json
|
||||
mklink /h drivers\html\apps.json share\apps.json
|
||||
|
||||
::Sync Wappalyzer.js
|
||||
::ln -f share\js\wappalyzer.js drivers\html\js
|
||||
if exist drivers\html\js\wappalyzer.js del drivers\html\js\wappalyzer.js
|
||||
mklink /h drivers\html\js\wappalyzer.js share\js\wappalyzer.js
|
||||
|
||||
|
||||
|
||||
:: PHP DRIVER
|
||||
::
|
||||
::Sync apps JSON
|
||||
::ln -f share\apps.json drivers\php
|
||||
if exist drivers\php\apps.json del drivers\php\apps.json
|
||||
mklink /h drivers\php\apps.json share\apps.json
|
||||
|
||||
::Sync Wappalyzer.js
|
||||
::ln -f share\js\wappalyzer.js drivers\php\js
|
||||
if exist drivers\php\js\wappalyzer.js del drivers\php\js\wappalyzer.js
|
||||
mklink /h drivers\php\js\wappalyzer.js share\js\wappalyzer.js
|
Reference in new issue