diff --git a/chrome/content/apps.js b/chrome/content/apps.js
index ba19f2cdf..892b6deab 100644
--- a/chrome/content/apps.js
+++ b/chrome/content/apps.js
@@ -24,7 +24,8 @@ if ( typeof wappalyzer != 'undefined' ) {
22: { name: 'Web server', plural: 'Web servers' },
23: { name: 'Cache tool', plural: 'Cache tools' },
24: { name: 'Rich text editor', plural: 'Rich text editors' },
- 25: { name: 'Javascript Graphics', plural: 'Javascript Graphics' }
+ 25: { name: 'Javascript Graphics', plural: 'Javascript Graphics' },
+ 26: { name: 'Mobile framework', plural: 'Mobile frameworks' }
};
wappalyzer.apps = {
@@ -90,6 +91,7 @@ if ( typeof wappalyzer != 'undefined' ) {
'FrontPage': { cats: { 1: 20 }, meta: { 'generator': /Microsoft FrontPage/ }, html: /]+urn:schemas\-microsoft\-com:office:office/i },
'Get Satisfaction': { cats: { 1: 13 }, html: /var feedback_widget = new GSFN\.feedback_widget\(feedback_widget_options\)/ },
'Google Analytics': { cats: { 1: 10 }, script: /(\.google\-analytics\.com\/ga\.js|google-analytics\.com\/urchin\.js)/, env: /^gaGlobal$/ },
+ 'Google App Engine': { cats: { 1: 22 }, headers: { 'Server': /Google Frontend/i } },
'Google Font API': { cats: { 1: 17 }, html: /]* href=("|')http:\/\/fonts\.googleapis\.com/ },
'Google Friend Connect': { cats: { 1: 5 }, script: /google.com\/friendconnect/ },
'Google Maps': { cats: { 1: 5 }, script: /(maps\.google\.com\/maps\?file=api|maps\.google\.com\/maps\/api\/staticmap)/ },
@@ -104,11 +106,14 @@ if ( typeof wappalyzer != 'undefined' ) {
'iWeb': { cats: { 1: 20 }, meta: { 'generator': /iWeb/i } },
'Jalios': { cats: { 1: 1 }, meta: { 'generator': /Jalios/i } },
'Javascript Infovis Toolkit': { cats: { 1: 25 }, script: /jit.*\.js/, env: '/^\$jit$/' },
+ 'Jo': { cats: { 1: 26, 2: 12 }, script: /[^a-zA-Z]jo.*\.js/i },
'Joomla': { cats: { 1: 1 }, meta: { 'generator': /Joomla/i }, html: /]+name=('|")JTLSHOP|]+OpenCart|route = getURLVar\(("|')route)/i },
'openEngine': { cats: { 1: 1 }, html: /]+openEngine/i },
+ 'OpenLayers': { cats: { 1: 5 }, script: /openlayers/, env:/^OpenLayers$/ },
'osCommerce': { cats: { 1: 6 }, html: /|]*(osCsid|cPath)/i },
'osCSS': { cats: { 1: 6 }, html: /]+>var reddit = {|]+Powered by Reddit|powered by ]+>reddit<)/i, url: /^(www.)?reddit\.com/ },
'Redmine': { cats: { 1: 13 }, meta: { 'description': /Redmine/i }, html: /Powered by ]+Redmine/i },
'Reinvigorate': { cats: { 1: 10 }, html: /reinvigorate\.track\("/ },
+ 'RequireJS': { cats: { 1: 12 }, script: /require.*\.js/ , env: /^requirejs$/},
'S.Builder': { cats: { 1: 1 }, meta: { 'generator': /S\.Builder/i } },
's9y': { cats: { 1: 1 }, meta: { 'generator': /Serendipity/i } },
'script.aculo.us': { cats: { 1: 12 }, script: /(scriptaculous|protoaculous)\.js/, env: /^Scriptaculous$/ },
+ 'Sencha Touch': { cats: { 1: 26, 2: 12}, script: /sencha\-touch.*\.js/},
'ShareThis': { cats: { 1: 5 }, script: /w\.sharethis\.com\// },
'sIFR': { cats: { 1: 17 }, script: /sifr\.js/ },
'Site Meter': { cats: { 1: 10 }, script: /sitemeter.com\/js\/counter\.js\?site=/ },
@@ -207,7 +215,8 @@ if ( typeof wappalyzer != 'undefined' ) {
'TYPO3': { cats: { 1: 1 }, meta: { 'generator': /TYPO3/i }, html: /(<(script[^>]* src|link[^>]* href)=[^>]*fileadmin)/i, url: /\/typo3/i },
'Ubercart': { cats: { 1: 6 }, script: /uc_cart\/uc_cart_block\.js/ },
'Umbraco': { cats: { 1: 1 }, headers: { 'X-Umbraco-Version': /.+/ } },
- 'Underscore.js': { cats: { 1: 12 }, script: /underscore.*\.js/, env: /^_.VERSION$/ },
+ 'Underscore.js': { cats: { 1: 12 }, script: /underscore.*\.js/ },
+ 'UserRules': { cats: { 1: 13 }, html: /var _usrp =/ , env: /^\_usrp$/ },
'Vanilla': { cats: { 1: 2 }, html: /]+id=("|')DCSIMG("|')[^>]+webtrends/i },
'Weebly': { cats: { 1: 1 }, html: /<[^>]+class=("|')weebly/i },
'WikkaWiki': { cats: { 1: 8 }, meta: { 'generator': /WikkaWiki/ }, html: /Powered by ]+WikkaWiki/i },
+ 'wink': { cats: { 1: 26, 2: 12 }, script: /(\_base\/js\/base|wink).*\.js/i, env:/^wink$/ },
'Wolf CMS': { cats: { 1: 1 }, html: /]+wolfcms.org.+Wolf CMS.+inside/i },
'Woopra': { cats: { 1: 10 }, script: /static\.woopra\.com/ },
'WordPress': { cats: { 1: 1, 2: 11 }, meta: { 'generator': /WordPress/i }, html: /]+wp-content/i },
@@ -235,6 +245,7 @@ if ( typeof wappalyzer != 'undefined' ) {
'XenForo': { cats: { 1: 2 }, html: /(jQuery\.extend\(true, XenForo|Forum software by XenForo™|]+src=("|')[^>]+xiti.com\/hit.xiti/i },
'XMB': { cats: { 1: 2 }, html: /