diff --git a/.travis.yml b/.travis.yml
index cf4351c55..3fda78932 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,14 +1,21 @@
language: node_js
node_js:
- - "4.2.2"
+ - "4"
sudo: false
before_install:
- - export WAPPALYZER_ROOT=$TRAVIS_BUILD_DIR
- - export WAPPALYZER_NODE_PATH=$TRAVIS_BUILD_DIR
- - export PATH=$PATH:$TRAVIS_BUILD_DIR/bin
-install:
- - npm install jsonlint jpm imagemin-cli svgo -g
- - ln -s docker/node/package.json package.json && npm install
- - mkdir phantomjs && curl -L https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-x86_64.tar.bz2 | tar xvjC phantomjs && ln -s $WAPPALYZER_ROOT/phantomjs/phantomjs-*-linux-x86_64/bin/phantomjs bin/phantomjs
-script: wappalyzer build
+ - export WAPPALYZER_ROOT=$TRAVIS_BUILD_DIR
+ - export WAPPALYZER_NODE_PATH=$TRAVIS_BUILD_DIR
+ - export PATH=$PATH:$TRAVIS_BUILD_DIR/bin
+ - ln -s docker/node/package.json package.json
after_script: ls -l --block-size=kB build
+cache:
+ directories:
+ - node_modules
+env:
+ - CXX=g++-4.8
+addons:
+ apt:
+ sources:
+ - ubuntu-toolchain-r-test
+ packages:
+ - g++-4.8
diff --git a/README.md b/README.md
index 9b6ceb614..4911a745c 100644
--- a/README.md
+++ b/README.md
@@ -24,7 +24,7 @@ This section describes how to set up a development environment. Everything you
need is contained in a [Docker image](https://registry.hub.docker.com/u/wappalyzer/dev/)
which is managed by Vagrant.
-Running this environment optional but recommended as it provides some helpful tools.
+Running this environment is optional but recommended as it provides some helpful tools.
First, install [Docker](https://www.docker.com/) and [Vagrant](https://www.vagrantup.com/)
on your system.
diff --git a/bin/wappalyzer-build b/bin/wappalyzer-build
index f55ab112e..0d48405a1 100755
--- a/bin/wappalyzer-build
+++ b/bin/wappalyzer-build
@@ -7,21 +7,28 @@ then
exit 1
fi
+if [ -z $WAPPALYZER_NODE_PATH ]
+then
+ echo "\$WAPPALYZER_NODE_PATH not set"
+
+ exit 1
+fi
+
set -eu
wappalyzer validate
echo "Prettifying apps.json..."
-jsonlint -ist $'\t' $WAPPALYZER_ROOT/src/apps.json
+node $WAPPALYZER_NODE_PATH/node_modules/jsonlint/lib/cli.js -ist $'\t' $WAPPALYZER_ROOT/src/apps.json
echo "Compressing PNG icons..."
-imagemin $WAPPALYZER_ROOT/src/icons $WAPPALYZER_ROOT/src/icons -o 3
+node $WAPPALYZER_NODE_PATH/node_modules/imagemin-cli/cli.js $WAPPALYZER_ROOT/src/icons $WAPPALYZER_ROOT/src/icons -o 7
echo "Compressing SVG icons..."
-svgo -f $WAPPALYZER_ROOT/src/icons $WAPPALYZER_ROOT/src/icons
+node $WAPPALYZER_NODE_PATH/node_modules/svgo/bin/svgo -q -f $WAPPALYZER_ROOT/src/icons $WAPPALYZER_ROOT/src/icons
wappalyzer links
@@ -34,7 +41,7 @@ echo "Building Firefox driver..."
pushd $WAPPALYZER_ROOT/src/drivers/firefox > /dev/null
-jpm xpi && mv *.xpi $WAPPALYZER_ROOT/build/wappalyzer_firefox.xpi
+node $WAPPALYZER_NODE_PATH/node_modules/jpm/bin/jpm xpi && mv *.xpi $WAPPALYZER_ROOT/build/wappalyzer_firefox.xpi
popd > /dev/null
diff --git a/bin/wappalyzer-validate b/bin/wappalyzer-validate
index a6e8c691e..d9d09a617 100755
--- a/bin/wappalyzer-validate
+++ b/bin/wappalyzer-validate
@@ -27,7 +27,7 @@ path="$path/src"
echo "Validating apps.json..."
-jsonlint --quiet -V $WAPPALYZER_ROOT/schema.json $path/apps.json
+node $WAPPALYZER_NODE_PATH/node_modules/jsonlint/lib/cli.js --quiet -V $WAPPALYZER_ROOT/schema.json $path/apps.json
echo "Validating regular expressions..."
diff --git a/bin/wappalyzer-validate-icons b/bin/wappalyzer-validate-icons
index 38a8cb2bf..3ec796ac6 100755
--- a/bin/wappalyzer-validate-icons
+++ b/bin/wappalyzer-validate-icons
@@ -31,7 +31,11 @@ for (app in json.apps) {
if (exists) {
if (type === "PNG") {
var buffer = fileType(readChunk.sync(path, 0, 262));
- if (buffer.mime !== 'image/png') {
+ if (buffer === null) {
+ var err = new Error('Unknown mimetype or bad file for "' + app + '": src/icons/' + iconPath);
+ throw err;
+ }
+ else if (buffer.mime !== 'image/png') {
var err = new Error('Incorrect mimetype "' + buffer.mime + '" when expected PNG for app "' + app + '": src/icons/' + iconPath);
throw err;
}
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 857cf65a6..625b6bf14 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -32,7 +32,7 @@ RUN su wappalyzer -c "mkdir $WAPPALYZER_NODE_PATH"
ADD node/package.json $WAPPALYZER_NODE_PATH/package.json
-RUN npm install jsonlint jpm imagemin-cli svgo -g && su wappalyzer -c "cd $WAPPALYZER_NODE_PATH && npm install"
+RUN su wappalyzer -c "cd $WAPPALYZER_NODE_PATH && npm i"
# PhantomJS
diff --git a/docker/node/package.json b/docker/node/package.json
index e3174ad53..b75954434 100644
--- a/docker/node/package.json
+++ b/docker/node/package.json
@@ -1,7 +1,26 @@
{
+ "name": "wappalyzer-test",
+ "private": true,
+ "license": "GPLv3",
+ "bugs": {
+ "url": "https://github.com/AliasIO/Wappalyzer/issues"
+ },
+ "homepage": "https://github.com/AliasIO/Wappalyzer",
+ "description": "Build test for Wappalyzer",
+ "repository": "AliasIO/Wappalyzer",
+ "scripts": {
+ "test": "./bin/wappalyzer build"
+ },
"devDependencies": {
- "file-type": "3.1.*",
+ "file-type": "3.4.*",
"is-svg": "1.1.*",
- "read-chunk": "1.0.*"
+ "read-chunk": "1.0.*",
+ "jsonlint": "*",
+ "jpm": "*",
+ "imagemin-cli": "*",
+ "svgo": "*"
+ },
+ "engines": {
+ "node": ">= 4"
}
}
diff --git a/src/apps.json b/src/apps.json
index 4becba26c..7da09c1d7 100755
--- a/src/apps.json
+++ b/src/apps.json
@@ -1,5 +1,68 @@
{
- "apps": {
+ "apps": {
+ "Strato": {
+ "cats": [
+ 6
+ ],
+ "html": "",
+ "website": "shop.strato.com",
+ "icon": "strato.png"
+ },
+ "Modified": {
+ "cats": [
+ 6
+ ],
+ "meta": {
+ "generator": "\\(c\\) by modified eCommerce Shopsoftware ------ http://www.modified-shop.org"
+ },
+ "icon": "modified.png",
+ "website": "www.modified-shop.org/"
+ },
+ "Mietshop": {
+ "cats": [
+ 6
+ ],
+ "meta": {
+ "generator": "Mietshop"
+ },
+ "html": "",
+ "website": "www.epages.com/",
+ "icon": "epages.png"
+ },
+ "AfterBuy": {
+ "cats": [
+ 6
+ ],
+ "html": [
+ "This OnlineStore is brought to you by ViA-Online GmbH Afterbuy. Information and contribution at https://www.afterbuy.de"
+ ],
+ "icon": "after-buy.png",
+ "script": "shop-static\\.afterbuy\\.de",
+ "website": "www.afterbuy.de"
+ },
+ "Xonic": {
+ "cats": [
+ 6
+ ],
+ "html": ["Powered by xonic-solutions Shopsoftware"],
+ "meta": {
+ "keywords": "xonic-solutions"
+ },
+ "script": "core/jslib/jquery\\.xonic\\.js\\.php",
+ "website": "www.xonic-solutions.de",
+ "icon": "xonic.png"
+ },
"1C-Bitrix": {
"cats": [
1
@@ -65,6 +128,28 @@
"icon": "3ware.png",
"website": "www.3ware.com"
},
+ "a-blog cms": {
+ "cats": [
+ 1
+ ],
+ "icon": "a-blog cms.png",
+ "implies": "PHP",
+ "meta": {
+ "generator": "a-blog cms"
+ },
+ "website": "www.a-blogcms.jp"
+ },
+ "anchorCache": {
+ "cats": [
+ 23
+ ],
+ "meta": {
+ "generator": "anchorCache"
+ },
+ "icon": "anchorCache.png",
+ "implies": "PHP",
+ "website": "www.anchorcache.eu"
+ },
"AMPcms": {
"cats": [
1
@@ -405,6 +490,21 @@
],
"website": "angularjs.org"
},
+ "Angular Material": {
+ "cats": [
+ 18
+ ],
+ "env": "^angular$",
+ "icon": "Angular.svg",
+ "implies": [
+ "AngularJS"
+ ],
+ "script": [
+ "/([\\d.]+(?:\\-?rc[.\\d]*)*)/angular-material(?:\\.min)?\\.js\\;version:\\1",
+ "angular-material.*\\.js"
+ ],
+ "website": "material.angularjs.org"
+ },
"Apache": {
"cats": [
22
@@ -412,7 +512,7 @@
"headers": {
"Server": "(?:Apache(?:$|/([\\d.]+)|[^/-])|(?:^|\b)HTTPD)\\;version:\\1"
},
- "icon": "Apache.png",
+ "icon": "Apache.svg",
"website": "apache.org"
},
"Apache HBase": {
@@ -675,12 +775,20 @@
"implies": "Python",
"website": "docs.python.org/2/library/basehttpserver.html"
},
+ "BEM": {
+ "cats": [
+ 12
+ ],
+ "html": "<[^>]+data-bem",
+ "icon": "BEM.png",
+ "website": "www.en.bem.info"
+ },
"BigDump": {
"cats": [
3
],
"html": "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+]>
+
\ No newline at end of file
diff --git a/src/icons/BEM.png b/src/icons/BEM.png
new file mode 100644
index 000000000..172170eb3
Binary files /dev/null and b/src/icons/BEM.png differ
diff --git a/src/icons/BigDump.png b/src/icons/BigDump.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/BigDump.png and /dev/null differ
diff --git a/src/icons/Boa.png b/src/icons/Boa.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Boa.png and /dev/null differ
diff --git a/src/icons/Boba.js.png b/src/icons/Boba.js.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Boba.js.png and /dev/null differ
diff --git a/src/icons/CMSimple.png b/src/icons/CMSimple.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/CMSimple.png and /dev/null differ
diff --git a/src/icons/CloudFlare.png b/src/icons/CloudFlare.png
deleted file mode 100644
index bddcde3f9..000000000
Binary files a/src/icons/CloudFlare.png and /dev/null differ
diff --git a/src/icons/CloudFlare.svg b/src/icons/CloudFlare.svg
new file mode 100644
index 000000000..864c2db84
--- /dev/null
+++ b/src/icons/CloudFlare.svg
@@ -0,0 +1,304 @@
+
+
diff --git a/src/icons/CompaqHTTPServer.png b/src/icons/CompaqHTTPServer.png
deleted file mode 100755
index 44629e6f9..000000000
Binary files a/src/icons/CompaqHTTPServer.png and /dev/null differ
diff --git a/src/icons/Criteo.png b/src/icons/Criteo.png
deleted file mode 100644
index 2334e4db4..000000000
Binary files a/src/icons/Criteo.png and /dev/null differ
diff --git a/src/icons/Criteo.svg b/src/icons/Criteo.svg
new file mode 100644
index 000000000..f9cc21a9a
--- /dev/null
+++ b/src/icons/Criteo.svg
@@ -0,0 +1 @@
+
diff --git a/src/icons/Decorum.png b/src/icons/Decorum.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Decorum.png and /dev/null differ
diff --git a/src/icons/Disqus.png b/src/icons/Disqus.png
deleted file mode 100644
index abbca624d..000000000
Binary files a/src/icons/Disqus.png and /dev/null differ
diff --git a/src/icons/Disqus.svg b/src/icons/Disqus.svg
new file mode 100644
index 000000000..0e2c2e0e8
--- /dev/null
+++ b/src/icons/Disqus.svg
@@ -0,0 +1,11 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/icons/DoubleClick Ad Exchange (AdX).png b/src/icons/DoubleClick Ad Exchange (AdX).png
deleted file mode 100644
index 68b6cba63..000000000
Binary files a/src/icons/DoubleClick Ad Exchange (AdX).png and /dev/null differ
diff --git a/src/icons/DoubleClick Campaign Manager (DCM).png b/src/icons/DoubleClick Campaign Manager (DCM).png
deleted file mode 100644
index 68b6cba63..000000000
Binary files a/src/icons/DoubleClick Campaign Manager (DCM).png and /dev/null differ
diff --git a/src/icons/DoubleClick Floodlight.png b/src/icons/DoubleClick Floodlight.png
deleted file mode 100644
index 68b6cba63..000000000
Binary files a/src/icons/DoubleClick Floodlight.png and /dev/null differ
diff --git a/src/icons/DoubleClick for Publishers (DFP).png b/src/icons/DoubleClick for Publishers (DFP).png
deleted file mode 100644
index 68b6cba63..000000000
Binary files a/src/icons/DoubleClick for Publishers (DFP).png and /dev/null differ
diff --git a/src/icons/DoubleClick.svg b/src/icons/DoubleClick.svg
new file mode 100644
index 000000000..bfc1bd635
--- /dev/null
+++ b/src/icons/DoubleClick.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/icons/Epoch.png b/src/icons/Epoch.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Epoch.png and /dev/null differ
diff --git a/src/icons/ExagonConcept.svg b/src/icons/ExagonConcept.svg
new file mode 100644
index 000000000..682ae5c91
--- /dev/null
+++ b/src/icons/ExagonConcept.svg
@@ -0,0 +1,12 @@
+
+
+
+
diff --git a/src/icons/FlashCom.png b/src/icons/FlashCom.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/FlashCom.png and /dev/null differ
diff --git a/src/icons/GitLab.png b/src/icons/GitLab.png
deleted file mode 100644
index 570136642..000000000
Binary files a/src/icons/GitLab.png and /dev/null differ
diff --git a/src/icons/GitLab.svg b/src/icons/GitLab.svg
new file mode 100644
index 000000000..3a2acd7ee
--- /dev/null
+++ b/src/icons/GitLab.svg
@@ -0,0 +1,60 @@
+
+
\ No newline at end of file
diff --git a/src/icons/Google AdSense.png b/src/icons/Google AdSense.png
deleted file mode 100644
index a02171a32..000000000
Binary files a/src/icons/Google AdSense.png and /dev/null differ
diff --git a/src/icons/Google AdSense.svg b/src/icons/Google AdSense.svg
new file mode 100644
index 000000000..fcd95c6c5
--- /dev/null
+++ b/src/icons/Google AdSense.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/src/icons/Google Analytics.png b/src/icons/Google Analytics.png
deleted file mode 100644
index 1256791ff..000000000
Binary files a/src/icons/Google Analytics.png and /dev/null differ
diff --git a/src/icons/Google Analytics.svg b/src/icons/Google Analytics.svg
new file mode 100644
index 000000000..52c1c3f57
--- /dev/null
+++ b/src/icons/Google Analytics.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/src/icons/HP ChaiServer.png b/src/icons/HP ChaiServer.png
deleted file mode 100755
index 44629e6f9..000000000
Binary files a/src/icons/HP ChaiServer.png and /dev/null differ
diff --git a/src/icons/HP Compact Server.png b/src/icons/HP Compact Server.png
deleted file mode 100755
index 44629e6f9..000000000
Binary files a/src/icons/HP Compact Server.png and /dev/null differ
diff --git a/src/icons/HP ProCurve.png b/src/icons/HP ProCurve.png
deleted file mode 100755
index 44629e6f9..000000000
Binary files a/src/icons/HP ProCurve.png and /dev/null differ
diff --git a/src/icons/HP System Management.png b/src/icons/HP System Management.png
deleted file mode 100755
index 44629e6f9..000000000
Binary files a/src/icons/HP System Management.png and /dev/null differ
diff --git a/src/icons/HP iLO.png b/src/icons/HP iLO.png
deleted file mode 100755
index 44629e6f9..000000000
Binary files a/src/icons/HP iLO.png and /dev/null differ
diff --git a/src/icons/HP.png b/src/icons/HP.png
deleted file mode 100755
index 44629e6f9..000000000
Binary files a/src/icons/HP.png and /dev/null differ
diff --git a/src/icons/HP.svg b/src/icons/HP.svg
new file mode 100644
index 000000000..5ba0da41d
--- /dev/null
+++ b/src/icons/HP.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/icons/HTTP Kit.png b/src/icons/HTTP Kit.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/HTTP Kit.png and /dev/null differ
diff --git a/src/icons/HTTP-Server.png b/src/icons/HTTP-Server.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/HTTP-Server.png and /dev/null differ
diff --git a/src/icons/Happy ICS Server.png b/src/icons/Happy ICS Server.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Happy ICS Server.png and /dev/null differ
diff --git a/src/icons/Hugo.png b/src/icons/Hugo.png
new file mode 100644
index 000000000..98e558996
Binary files /dev/null and b/src/icons/Hugo.png differ
diff --git a/src/icons/IBM Coremetrics.png b/src/icons/IBM Coremetrics.png
deleted file mode 100644
index 26106b25f..000000000
Binary files a/src/icons/IBM Coremetrics.png and /dev/null differ
diff --git a/src/icons/IBM HTTP Server.png b/src/icons/IBM HTTP Server.png
deleted file mode 100644
index 26106b25f..000000000
Binary files a/src/icons/IBM HTTP Server.png and /dev/null differ
diff --git a/src/icons/IBM Tivoli Storage Manager.png b/src/icons/IBM Tivoli Storage Manager.png
deleted file mode 100644
index 26106b25f..000000000
Binary files a/src/icons/IBM Tivoli Storage Manager.png and /dev/null differ
diff --git a/src/icons/IBM WebSphere Commerce.png b/src/icons/IBM WebSphere Commerce.png
deleted file mode 100644
index 26106b25f..000000000
Binary files a/src/icons/IBM WebSphere Commerce.png and /dev/null differ
diff --git a/src/icons/IBM WebSphere Portal.png b/src/icons/IBM WebSphere Portal.png
deleted file mode 100644
index 26106b25f..000000000
Binary files a/src/icons/IBM WebSphere Portal.png and /dev/null differ
diff --git a/src/icons/IBM.svg b/src/icons/IBM.svg
new file mode 100644
index 000000000..4cc18f87e
--- /dev/null
+++ b/src/icons/IBM.svg
@@ -0,0 +1,5 @@
+
+
+
\ No newline at end of file
diff --git a/src/icons/Indexhibit.png b/src/icons/Indexhibit.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Indexhibit.png and /dev/null differ
diff --git a/src/icons/Indy.png b/src/icons/Indy.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Indy.png and /dev/null differ
diff --git a/src/icons/Ink.png b/src/icons/Ink.png
new file mode 100644
index 000000000..813119b4d
Binary files /dev/null and b/src/icons/Ink.png differ
diff --git a/src/icons/Java Servlet.png b/src/icons/Java Servlet.png
deleted file mode 100644
index 0160cf61c..000000000
Binary files a/src/icons/Java Servlet.png and /dev/null differ
diff --git a/src/icons/JavaServer Pages.png b/src/icons/JavaServer Pages.png
deleted file mode 100644
index 0160cf61c..000000000
Binary files a/src/icons/JavaServer Pages.png and /dev/null differ
diff --git a/src/icons/Kolibri CMS.png b/src/icons/Kolibri CMS.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Kolibri CMS.png and /dev/null differ
diff --git a/src/icons/Lazy.js.png b/src/icons/Lazy.js.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Lazy.js.png and /dev/null differ
diff --git a/src/icons/List.js.png b/src/icons/List.js.png
new file mode 100644
index 000000000..d2b027856
Binary files /dev/null and b/src/icons/List.js.png differ
diff --git a/src/icons/Marionette.js.svg b/src/icons/Marionette.js.svg
index e8f219401..2c042b8bf 100644
--- a/src/icons/Marionette.js.svg
+++ b/src/icons/Marionette.js.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/src/icons/Microsoft HTTPAPI.png b/src/icons/Microsoft HTTPAPI.png
deleted file mode 100644
index deabbd57e..000000000
Binary files a/src/icons/Microsoft HTTPAPI.png and /dev/null differ
diff --git a/src/icons/Microsoft.svg b/src/icons/Microsoft.svg
new file mode 100644
index 000000000..0b11ed103
--- /dev/null
+++ b/src/icons/Microsoft.svg
@@ -0,0 +1,9 @@
+
+
+
\ No newline at end of file
diff --git a/src/icons/MiniServ.png b/src/icons/MiniServ.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/MiniServ.png and /dev/null differ
diff --git a/src/icons/MochiWeb.png b/src/icons/MochiWeb.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/MochiWeb.png and /dev/null differ
diff --git a/src/icons/Motion-httpd.png b/src/icons/Motion-httpd.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Motion-httpd.png and /dev/null differ
diff --git a/src/icons/MotoCMS.svg b/src/icons/MotoCMS.svg
new file mode 100644
index 000000000..8459b8260
--- /dev/null
+++ b/src/icons/MotoCMS.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/icons/MySQL.png b/src/icons/MySQL.png
deleted file mode 100644
index a2b9def0d..000000000
Binary files a/src/icons/MySQL.png and /dev/null differ
diff --git a/src/icons/MySQL.svg b/src/icons/MySQL.svg
new file mode 100644
index 000000000..5c2c28a0b
--- /dev/null
+++ b/src/icons/MySQL.svg
@@ -0,0 +1,42 @@
+
+
diff --git a/src/icons/Nginx.png b/src/icons/Nginx.png
deleted file mode 100644
index d3a1648b0..000000000
Binary files a/src/icons/Nginx.png and /dev/null differ
diff --git a/src/icons/Nginx.svg b/src/icons/Nginx.svg
new file mode 100644
index 000000000..25c7c758a
--- /dev/null
+++ b/src/icons/Nginx.svg
@@ -0,0 +1,35 @@
+
+
diff --git a/src/icons/Oracle Application Server.png b/src/icons/Oracle Application Server.png
deleted file mode 100644
index 435d816e1..000000000
Binary files a/src/icons/Oracle Application Server.png and /dev/null differ
diff --git a/src/icons/Oracle Commerce Cloud.png b/src/icons/Oracle Commerce Cloud.png
deleted file mode 100644
index 435d816e1..000000000
Binary files a/src/icons/Oracle Commerce Cloud.png and /dev/null differ
diff --git a/src/icons/Oracle Commerce.png b/src/icons/Oracle Commerce.png
deleted file mode 100644
index 435d816e1..000000000
Binary files a/src/icons/Oracle Commerce.png and /dev/null differ
diff --git a/src/icons/Oracle Dynamic Monitoring Service.png b/src/icons/Oracle Dynamic Monitoring Service.png
deleted file mode 100644
index 435d816e1..000000000
Binary files a/src/icons/Oracle Dynamic Monitoring Service.png and /dev/null differ
diff --git a/src/icons/Oracle HTTP Server.png b/src/icons/Oracle HTTP Server.png
deleted file mode 100644
index 435d816e1..000000000
Binary files a/src/icons/Oracle HTTP Server.png and /dev/null differ
diff --git a/src/icons/Oracle Recommendations On Demand.png b/src/icons/Oracle Recommendations On Demand.png
deleted file mode 100644
index 435d816e1..000000000
Binary files a/src/icons/Oracle Recommendations On Demand.png and /dev/null differ
diff --git a/src/icons/Oracle Web Cache.png b/src/icons/Oracle Web Cache.png
deleted file mode 100644
index 435d816e1..000000000
Binary files a/src/icons/Oracle Web Cache.png and /dev/null differ
diff --git a/src/icons/Eloqua.png b/src/icons/Oracle.png
similarity index 100%
rename from src/icons/Eloqua.png
rename to src/icons/Oracle.png
diff --git a/src/icons/PDF.js.svg b/src/icons/PDF.js.svg
index cb74a8d62..b842fa701 100644
--- a/src/icons/PDF.js.svg
+++ b/src/icons/PDF.js.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/src/icons/Paths.js.png b/src/icons/Paths.js.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Paths.js.png and /dev/null differ
diff --git a/src/icons/Penguin.png b/src/icons/Penguin.png
deleted file mode 100644
index 4535f55de..000000000
Binary files a/src/icons/Penguin.png and /dev/null differ
diff --git a/src/icons/Penguin.svg b/src/icons/Penguin.svg
new file mode 100644
index 000000000..edf330b32
--- /dev/null
+++ b/src/icons/Penguin.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/icons/Prospector.png b/src/icons/Prospector.png
new file mode 100644
index 000000000..fba2daee9
Binary files /dev/null and b/src/icons/Prospector.png differ
diff --git a/src/icons/Protovis.png b/src/icons/Protovis.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Protovis.png and /dev/null differ
diff --git a/src/icons/Public CMS.png b/src/icons/Public CMS.png
new file mode 100644
index 000000000..7a25b47fe
Binary files /dev/null and b/src/icons/Public CMS.png differ
diff --git a/src/icons/RAID HTTPServer.png b/src/icons/RAID HTTPServer.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/RAID HTTPServer.png and /dev/null differ
diff --git a/src/icons/Rapid Logic.png b/src/icons/Rapid Logic.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Rapid Logic.png and /dev/null differ
diff --git a/src/icons/Rickshaw.png b/src/icons/Rickshaw.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Rickshaw.png and /dev/null differ
diff --git a/src/icons/Segment.png b/src/icons/Segment.png
new file mode 100644
index 000000000..f9c595f08
Binary files /dev/null and b/src/icons/Segment.png differ
diff --git a/src/icons/Select2.png b/src/icons/Select2.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Select2.png and /dev/null differ
diff --git a/src/icons/Shopery.svg b/src/icons/Shopery.svg
new file mode 100644
index 000000000..300ad698e
--- /dev/null
+++ b/src/icons/Shopery.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/icons/SimpleHTTP.png b/src/icons/SimpleHTTP.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/SimpleHTTP.png and /dev/null differ
diff --git a/src/icons/Stamplay.png b/src/icons/Stamplay.png
new file mode 100644
index 000000000..264699655
Binary files /dev/null and b/src/icons/Stamplay.png differ
diff --git a/src/icons/Sulu.svg b/src/icons/Sulu.svg
new file mode 100644
index 000000000..2af495d68
--- /dev/null
+++ b/src/icons/Sulu.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/icons/SunOS.png b/src/icons/SunOS.png
deleted file mode 100644
index 435d816e1..000000000
Binary files a/src/icons/SunOS.png and /dev/null differ
diff --git a/src/icons/TYPO3 CMS.png b/src/icons/TYPO3 CMS.png
deleted file mode 100644
index bdca08681..000000000
Binary files a/src/icons/TYPO3 CMS.png and /dev/null differ
diff --git a/src/icons/TYPO3 Flow.png b/src/icons/TYPO3 Flow.png
deleted file mode 100644
index bdca08681..000000000
Binary files a/src/icons/TYPO3 Flow.png and /dev/null differ
diff --git a/src/icons/TYPO3 Neos.png b/src/icons/TYPO3 Neos.png
deleted file mode 100644
index bdca08681..000000000
Binary files a/src/icons/TYPO3 Neos.png and /dev/null differ
diff --git a/src/icons/TYPO3.svg b/src/icons/TYPO3.svg
new file mode 100644
index 000000000..db4a3369b
--- /dev/null
+++ b/src/icons/TYPO3.svg
@@ -0,0 +1,26 @@
+
+
\ No newline at end of file
diff --git a/src/icons/ThinkPHP.png b/src/icons/ThinkPHP.png
new file mode 100644
index 000000000..4f8c577ac
Binary files /dev/null and b/src/icons/ThinkPHP.png differ
diff --git a/src/icons/Twitter Emoji (Twemoji).png b/src/icons/Twitter Emoji (Twemoji).png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Twitter Emoji (Twemoji).png and /dev/null differ
diff --git a/src/icons/Varnish.png b/src/icons/Varnish.png
deleted file mode 100644
index 8addef862..000000000
Binary files a/src/icons/Varnish.png and /dev/null differ
diff --git a/src/icons/Varnish.svg b/src/icons/Varnish.svg
new file mode 100644
index 000000000..293ed4275
--- /dev/null
+++ b/src/icons/Varnish.svg
@@ -0,0 +1,58 @@
+
+
diff --git a/src/icons/Virata EmWeb.png b/src/icons/Virata EmWeb.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Virata EmWeb.png and /dev/null differ
diff --git a/src/icons/Windows CE.png b/src/icons/Windows CE.png
deleted file mode 100644
index deabbd57e..000000000
Binary files a/src/icons/Windows CE.png and /dev/null differ
diff --git a/src/icons/Windows Server.png b/src/icons/Windows Server.png
deleted file mode 100644
index deabbd57e..000000000
Binary files a/src/icons/Windows Server.png and /dev/null differ
diff --git a/src/icons/Winstone Servlet Container.png b/src/icons/Winstone Servlet Container.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/Winstone Servlet Container.png and /dev/null differ
diff --git a/src/icons/Woltlab Community Framework.png b/src/icons/Woltlab Community Framework.png
new file mode 100644
index 000000000..d226be408
Binary files /dev/null and b/src/icons/Woltlab Community Framework.png differ
diff --git a/src/icons/WordPress Super Cache.png b/src/icons/WordPress Super Cache.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/WordPress Super Cache.png and /dev/null differ
diff --git a/src/icons/WordPress.png b/src/icons/WordPress.png
deleted file mode 100644
index f23c8c210..000000000
Binary files a/src/icons/WordPress.png and /dev/null differ
diff --git a/src/icons/WordPress.svg b/src/icons/WordPress.svg
new file mode 100644
index 000000000..ac653dc40
--- /dev/null
+++ b/src/icons/WordPress.svg
@@ -0,0 +1,6 @@
+
+
diff --git a/src/icons/a-blog cms.png b/src/icons/a-blog cms.png
new file mode 100644
index 000000000..e85d5e1d5
Binary files /dev/null and b/src/icons/a-blog cms.png differ
diff --git a/src/icons/after-buy.png b/src/icons/after-buy.png
new file mode 100644
index 000000000..bc58984b5
Binary files /dev/null and b/src/icons/after-buy.png differ
diff --git a/src/icons/anchorCache.png b/src/icons/anchorCache.png
new file mode 100644
index 000000000..9e160bce5
Binary files /dev/null and b/src/icons/anchorCache.png differ
diff --git a/src/icons/caddy.svg b/src/icons/caddy.svg
new file mode 100644
index 000000000..8810d5430
--- /dev/null
+++ b/src/icons/caddy.svg
@@ -0,0 +1,72 @@
+
+
diff --git a/src/icons/default.png b/src/icons/default.png
index 2e51915b0..0e1e1fb0c 100644
Binary files a/src/icons/default.png and b/src/icons/default.png differ
diff --git a/src/icons/dwhttpd.png b/src/icons/dwhttpd.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/dwhttpd.png and /dev/null differ
diff --git a/src/icons/eHTTP.png b/src/icons/eHTTP.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/eHTTP.png and /dev/null differ
diff --git a/src/icons/epages.png b/src/icons/epages.png
new file mode 100644
index 000000000..f80112cd1
Binary files /dev/null and b/src/icons/epages.png differ
diff --git a/src/icons/jQuery Mobile.png b/src/icons/jQuery Mobile.png
deleted file mode 100644
index 5ebf502c7..000000000
Binary files a/src/icons/jQuery Mobile.png and /dev/null differ
diff --git a/src/icons/jQuery Mobile.svg b/src/icons/jQuery Mobile.svg
new file mode 100644
index 000000000..b6cce1d07
--- /dev/null
+++ b/src/icons/jQuery Mobile.svg
@@ -0,0 +1,59 @@
+
+
diff --git a/src/icons/jQuery Sparklines.png b/src/icons/jQuery Sparklines.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/jQuery Sparklines.png and /dev/null differ
diff --git a/src/icons/jQuery UI.png b/src/icons/jQuery UI.png
deleted file mode 100644
index 00215749a..000000000
Binary files a/src/icons/jQuery UI.png and /dev/null differ
diff --git a/src/icons/jQuery UI.svg b/src/icons/jQuery UI.svg
new file mode 100644
index 000000000..6357fe1a1
--- /dev/null
+++ b/src/icons/jQuery UI.svg
@@ -0,0 +1,50 @@
+
+
diff --git a/src/icons/jQuery.png b/src/icons/jQuery.png
deleted file mode 100644
index 5ebf502c7..000000000
Binary files a/src/icons/jQuery.png and /dev/null differ
diff --git a/src/icons/jQuery.svg b/src/icons/jQuery.svg
new file mode 100644
index 000000000..35a17dbb8
--- /dev/null
+++ b/src/icons/jQuery.svg
@@ -0,0 +1,46 @@
+
+
diff --git a/src/icons/mietshop.png b/src/icons/mietshop.png
new file mode 100644
index 000000000..b090dd901
Binary files /dev/null and b/src/icons/mietshop.png differ
diff --git a/src/icons/mod_auth_pam.png b/src/icons/mod_auth_pam.png
deleted file mode 100755
index 117b485d4..000000000
Binary files a/src/icons/mod_auth_pam.png and /dev/null differ
diff --git a/src/icons/mod_dav.png b/src/icons/mod_dav.png
deleted file mode 100644
index 117b485d4..000000000
Binary files a/src/icons/mod_dav.png and /dev/null differ
diff --git a/src/icons/mod_fastcgi.png b/src/icons/mod_fastcgi.png
deleted file mode 100644
index 117b485d4..000000000
Binary files a/src/icons/mod_fastcgi.png and /dev/null differ
diff --git a/src/icons/mod_jk.png b/src/icons/mod_jk.png
deleted file mode 100755
index 117b485d4..000000000
Binary files a/src/icons/mod_jk.png and /dev/null differ
diff --git a/src/icons/modified.png b/src/icons/modified.png
new file mode 100644
index 000000000..2783ad6ac
Binary files /dev/null and b/src/icons/modified.png differ
diff --git a/src/icons/question2answer.png b/src/icons/question2answer.png
new file mode 100644
index 000000000..53f6e571b
Binary files /dev/null and b/src/icons/question2answer.png differ
diff --git a/src/icons/shine.js.png b/src/icons/shine.js.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/shine.js.png and /dev/null differ
diff --git a/src/icons/strato.png b/src/icons/strato.png
new file mode 100644
index 000000000..2f6a696cc
Binary files /dev/null and b/src/icons/strato.png differ
diff --git a/src/icons/viennaCMS.png b/src/icons/viennaCMS.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/viennaCMS.png and /dev/null differ
diff --git a/src/icons/webpack.png b/src/icons/webpack.png
deleted file mode 100644
index bf74c0757..000000000
Binary files a/src/icons/webpack.png and /dev/null differ
diff --git a/src/icons/webpack.svg b/src/icons/webpack.svg
new file mode 100644
index 000000000..e666fcbb4
--- /dev/null
+++ b/src/icons/webpack.svg
@@ -0,0 +1,20 @@
+
+
diff --git a/src/icons/xCharts.png b/src/icons/xCharts.png
deleted file mode 100644
index 2e51915b0..000000000
Binary files a/src/icons/xCharts.png and /dev/null differ
diff --git a/src/icons/xonic.png b/src/icons/xonic.png
new file mode 100644
index 000000000..a49fffc98
Binary files /dev/null and b/src/icons/xonic.png differ