Skip to content

Add Mage-OS detection#246

Open
rhoerr wants to merge 3 commits intoHTTPArchive:mainfrom
rhoerr:claude/add-mageos-detection-PJ3GW
Open

Add Mage-OS detection#246
rhoerr wants to merge 3 commits intoHTTPArchive:mainfrom
rhoerr:claude/add-mageos-detection-PJ3GW

Conversation

@rhoerr
Copy link

@rhoerr rhoerr commented Jan 27, 2026

Add detection for Mage-OS, a community-driven, open-source fork of Magento.

Detection methods:

  • X-Dist: Mage-OS HTTP response header (full certainty)
  • /magento_version probe endpoint

The technology definition implies Magento, as Mage-OS is built on the Magento platform.


Test websites:

@rhoerr rhoerr force-pushed the claude/add-mageos-detection-PJ3GW branch from 04bab0c to 0aa772e Compare January 27, 2026 02:22
Copy link
Member

@tunetheweb tunetheweb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM if one change

Co-authored-by: Barry Pollard <barrypollard@google.com>
@github-actions
Copy link

WPT test run for https://almanac.httparchive.org/en/2022/

WPT test run results: http://webpagetest.httparchive.org/results.php?test=260127_FZ_7
Detected technologies:

{
    "detected": {
        "IaaS": "Google Cloud",
        "JavaScript libraries": "web-vitals",
        "RUM": "web-vitals",
        "Performance": "Priority Hints,Google Cloud Trace",
        "Security": "HSTS",
        "Webmail": "Google Workspace",
        "Email": "Google Workspace",
        "Analytics": "Google Analytics",
        "CDN": "Cloudflare",
        "Miscellaneous": "RSS,Open Graph"
    },
    "detected_apps": {
        "Google Cloud": "",
        "web-vitals": "",
        "Priority Hints": "",
        "HSTS": "",
        "Google Workspace": "",
        "Google Cloud Trace": "",
        "Google Analytics": "",
        "Cloudflare": "",
        "RSS": "",
        "Open Graph": ""
    },
    "detected_technologies": {
        "Google Cloud": {
            "name": "Google Cloud",
            "description": "Google Cloud is a suite of cloud computing services.",
            "slug": "google-cloud",
            "categories": [
                {
                    "id": 63,
                    "slug": "iaas",
                    "description": "Provides computing resources",
                    "groups": [
                        7
                    ],
                    "name": "IaaS",
                    "priority": 8
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "Google Cloud.svg",
            "website": "https://cloud.google.com",
            "pricing": [],
            "cpe": "cpe:2.3:a:google:cloud_platform:*:*:*:*:*:*:*:*"
        },
        "web-vitals": {
            "name": "web-vitals",
            "description": "The web-vitals JavaScript is a tiny, modular library for measuring all the web vitals metrics on real users.",
            "slug": "web-vitals",
            "categories": [
                {
                    "id": 59,
                    "slug": "javascript-libraries",
                    "description": "Collections of pre-written JavaScript code",
                    "groups": [
                        9
                    ],
                    "name": "JavaScript libraries",
                    "priority": 9
                },
                {
                    "id": 78,
                    "slug": "rum",
                    "description": "Tools that track performance as experienced by users",
                    "groups": [
                        2
                    ],
                    "name": "RUM",
                    "priority": 9
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "web-vitals.svg",
            "website": "https://github.com/GoogleChrome/web-vitals",
            "pricing": [],
            "cpe": null
        },
        "Priority Hints": {
            "name": "Priority Hints",
            "description": "Priority Hints exposes a mechanism for developers to signal a relative priority for browsers to consider when fetching resources.",
            "slug": "priority-hints",
            "categories": [
                {
                    "id": 92,
                    "slug": "performance",
                    "description": "Tools that measure and optimize site speed",
                    "groups": [
                        7
                    ],
                    "name": "Performance",
                    "priority": 9
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "Priority Hints.svg",
            "website": "https://wicg.github.io/priority-hints/",
            "pricing": [],
            "cpe": null
        },
        "HSTS": {
            "name": "HSTS",
            "description": "HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.",
            "slug": "hsts",
            "categories": [
                {
                    "id": 16,
                    "slug": "security",
                    "description": "Technologies that protect websites from vulnerabilities and attacks",
                    "groups": [
                        11
                    ],
                    "name": "Security",
                    "priority": 9
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "default.svg",
            "website": "https://www.rfc-editor.org/rfc/rfc6797#section-6.1",
            "pricing": [],
            "cpe": null
        },
        "Google Workspace": {
            "name": "Google Workspace",
            "description": "Google Workspace, formerly G Suite, is a collection of cloud computing, productivity and collaboration tools.",
            "slug": "google-workspace",
            "categories": [
                {
                    "id": 30,
                    "slug": "webmail",
                    "description": "Systems that allow users to send and receive emails through a browser",
                    "groups": [
                        4
                    ],
                    "name": "Webmail",
                    "priority": 2
                },
                {
                    "id": 75,
                    "slug": "email",
                    "description": "Systems that manage email communication",
                    "groups": [
                        4,
                        2
                    ],
                    "name": "Email",
                    "priority": 9
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "Google.svg",
            "website": "https://workspace.google.com/",
            "pricing": [],
            "cpe": null
        },
        "Google Cloud Trace": {
            "name": "Google Cloud Trace",
            "description": "Google Cloud Trace is a distributed tracing system that collects latency data from applications and displays it in the Google Cloud Console.",
            "slug": "google-cloud-trace",
            "categories": [
                {
                    "id": 92,
                    "slug": "performance",
                    "description": "Tools that measure and optimize site speed",
                    "groups": [
                        7
                    ],
                    "name": "Performance",
                    "priority": 9
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "google-cloud-trace.svg",
            "website": "https://cloud.google.com/trace",
            "pricing": [],
            "cpe": null
        },
        "Google Analytics": {
            "name": "Google Analytics",
            "description": "Google Analytics is a free web analytics service that tracks and reports website traffic.",
            "slug": "google-analytics",
            "categories": [
                {
                    "id": 10,
                    "slug": "analytics",
                    "description": "Tools that track user behavior and provide insights into website performance",
                    "groups": [
                        8
                    ],
                    "name": "Analytics",
                    "priority": 9
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "Google Analytics.svg",
            "website": "https://google.com/analytics",
            "pricing": [],
            "cpe": null
        },
        "Cloudflare": {
            "name": "Cloudflare",
            "description": "Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.",
            "slug": "cloudflare",
            "categories": [
                {
                    "id": 31,
                    "slug": "cdn",
                    "description": "(Content Delivery Network) Distribute website content globally to improve load times for users",
                    "groups": [
                        7
                    ],
                    "name": "CDN",
                    "priority": 9
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "CloudFlare.svg",
            "website": "https://www.cloudflare.com",
            "pricing": [],
            "cpe": null
        },
        "RSS": {
            "name": "RSS",
            "description": "RSS is a family of web feed formats used to publish frequently updated works—such as blog entries, news headlines, audio, and video—in a standardized format.",
            "slug": "rss",
            "categories": [
                {
                    "id": 19,
                    "slug": "miscellaneous",
                    "description": "Tools and technologies that don't fit into other categories",
                    "groups": [
                        6
                    ],
                    "name": "Miscellaneous",
                    "priority": 10
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "RSS.svg",
            "website": "https://www.rssboard.org/rss-specification",
            "pricing": [],
            "cpe": null
        },
        "Open Graph": {
            "name": "Open Graph",
            "description": "Open Graph is a protocol that is used to integrate any web page into the social graph.",
            "slug": "open-graph",
            "categories": [
                {
                    "id": 19,
                    "slug": "miscellaneous",
                    "description": "Tools and technologies that don't fit into other categories",
                    "groups": [
                        6
                    ],
                    "name": "Miscellaneous",
                    "priority": 10
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "Open Graph.png",
            "website": "https://ogp.me",
            "pricing": [],
            "cpe": null
        }
    }
}
WPT test run for https://demo.mage-os.org/

WPT test run results: http://webpagetest.httparchive.org/results.php?test=260127_B7_8
Detected technologies:

{
    "detected": {
        "Ecommerce": "Cart Functionality,Magento 2,Mage-OS",
        "CMS": "Magento 2,Mage-OS",
        "Databases": "MySQL",
        "Programming languages": "PHP",
        "UI frameworks": "Bootstrap",
        "JavaScript frameworks": "RequireJS 2.3.7",
        "Web servers": "Nginx 1.28.0",
        "Reverse proxies": "Nginx 1.28.0",
        "JavaScript libraries": "jQuery UI 1.13.2,Underscore.js 1.13.6,Moment.js,jQuery 3.7.1"
    },
    "detected_apps": {
        "Cart Functionality": "",
        "Magento": "2",
        "Mage-OS": "",
        "MySQL": "",
        "PHP": "",
        "Bootstrap": "",
        "RequireJS": "2.3.7",
        "Nginx": "1.28.0",
        "jQuery UI": "1.13.2",
        "Underscore.js": "1.13.6",
        "Moment.js": "",
        "jQuery": "3.7.1"
    },
    "detected_technologies": {
        "Cart Functionality": {
            "name": "Cart Functionality",
            "description": "Websites that have a shopping cart or checkout page, either using a known ecommerce platform or a custom solution.",
            "slug": "cart-functionality",
            "categories": [
                {
                    "id": 6,
                    "slug": "ecommerce",
                    "description": "Platforms providing the infrastructure to sell products and services online, managing everything from product catalogs to payments",
                    "groups": [
                        1
                    ],
                    "name": "Ecommerce",
                    "priority": 1
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "Cart-generic.svg",
            "website": "https://www.wappalyzer.com/technologies/ecommerce/cart-functionality",
            "pricing": [],
            "cpe": null
        },
        "Magento": {
            "name": "Magento",
            "description": "Magento is an open-source ecommerce platform written in PHP.",
            "slug": "magento",
            "categories": [
                {
                    "id": 6,
                    "slug": "ecommerce",
                    "description": "Platforms providing the infrastructure to sell products and services online, managing everything from product catalogs to payments",
                    "groups": [
                        1
                    ],
                    "name": "Ecommerce",
                    "priority": 1
                },
                {
                    "id": 1,
                    "slug": "cms",
                    "description": "Platforms used to create, manage, and modify content on a website without needing specialized technical knowledge",
                    "groups": [
                        3
                    ],
                    "name": "CMS",
                    "priority": 1
                }
            ],
            "confidence": 100,
            "version": "2",
            "icon": "Magento.svg",
            "website": "https://magento.com",
            "pricing": [],
            "cpe": "cpe:2.3:a:magento:magento:*:*:*:*:*:*:*:*"
        },
        "Mage-OS": {
            "name": "Mage-OS",
            "description": "Mage-OS is an independent, community-driven ecommerce platform built on Magento Open Source.",
            "slug": "mage-os",
            "categories": [
                {
                    "id": 6,
                    "slug": "ecommerce",
                    "description": "Platforms providing the infrastructure to sell products and services online, managing everything from product catalogs to payments",
                    "groups": [
                        1
                    ],
                    "name": "Ecommerce",
                    "priority": 1
                },
                {
                    "id": 1,
                    "slug": "cms",
                    "description": "Platforms used to create, manage, and modify content on a website without needing specialized technical knowledge",
                    "groups": [
                        3
                    ],
                    "name": "CMS",
                    "priority": 1
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "Mage-OS.svg",
            "website": "https://mage-os.org",
            "pricing": [],
            "cpe": "cpe:2.3:a:adobe:magento:*:*:*:*:*:*:*:*"
        },
        "MySQL": {
            "name": "MySQL",
            "description": "MySQL is an open-source relational database management system.",
            "slug": "mysql",
            "categories": [
                {
                    "id": 34,
                    "slug": "databases",
                    "description": "Software used to store website information",
                    "groups": [
                        7
                    ],
                    "name": "Databases",
                    "priority": 5
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "MySQL.svg",
            "website": "https://mysql.com",
            "pricing": [],
            "cpe": "cpe:2.3:a:mysql:mysql:*:*:*:*:*:*:*:*"
        },
        "PHP": {
            "name": "PHP",
            "description": "PHP is a general-purpose scripting language used for web development.",
            "slug": "php",
            "categories": [
                {
                    "id": 27,
                    "slug": "programming-languages",
                    "description": "Build website functionalities and backend services",
                    "groups": [
                        9
                    ],
                    "name": "Programming languages",
                    "priority": 5
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "PHP.svg",
            "website": "https://php.net",
            "pricing": [],
            "cpe": "cpe:2.3:a:php:php:*:*:*:*:*:*:*:*"
        },
        "Bootstrap": {
            "name": "Bootstrap",
            "description": "Bootstrap is a free and open-source CSS framework directed at responsive, mobile-first front-end web development. It contains CSS and JavaScript-based design templates for typography, forms, buttons, navigation, and other interface components.",
            "slug": "bootstrap",
            "categories": [
                {
                    "id": 66,
                    "slug": "ui-frameworks",
                    "description": "Provide pre-built components to build user interfaces",
                    "groups": [
                        9
                    ],
                    "name": "UI frameworks",
                    "priority": 7
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "Bootstrap.svg",
            "website": "https://getbootstrap.com",
            "pricing": [],
            "cpe": "cpe:2.3:a:getbootstrap:bootstrap:*:*:*:*:*:*:*:*"
        },
        "RequireJS": {
            "name": "RequireJS",
            "description": "RequireJS is a JavaScript library and file loader which manages the dependencies between JavaScript files and in modular programming.",
            "slug": "requirejs",
            "categories": [
                {
                    "id": 12,
                    "slug": "javascript-frameworks",
                    "description": "Software used for building dynamic web applications and user interfaces",
                    "groups": [
                        9
                    ],
                    "name": "JavaScript frameworks",
                    "priority": 8
                }
            ],
            "confidence": 100,
            "version": "2.3.7",
            "icon": "RequireJS.svg",
            "website": "https://requirejs.org",
            "pricing": [],
            "cpe": null
        },
        "Nginx": {
            "name": "Nginx",
            "description": "Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.",
            "slug": "nginx",
            "categories": [
                {
                    "id": 22,
                    "slug": "web-servers",
                    "description": "Software applications that deliver web pages to users' browsers",
                    "groups": [
                        7
                    ],
                    "name": "Web servers",
                    "priority": 8
                },
                {
                    "id": 64,
                    "slug": "reverse-proxies",
                    "description": "Intercept client requests and forward them to the appropriate server",
                    "groups": [
                        7
                    ],
                    "name": "Reverse proxies",
                    "priority": 7
                }
            ],
            "confidence": 100,
            "version": "1.28.0",
            "icon": "Nginx.svg",
            "website": "https://nginx.org/en",
            "pricing": [],
            "cpe": "cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*"
        },
        "jQuery UI": {
            "name": "jQuery UI",
            "description": "jQuery UI is a collection of GUI widgets, animated visual effects, and themes implemented with jQuery, Cascading Style Sheets, and HTML.",
            "slug": "jquery-ui",
            "categories": [
                {
                    "id": 59,
                    "slug": "javascript-libraries",
                    "description": "Collections of pre-written JavaScript code",
                    "groups": [
                        9
                    ],
                    "name": "JavaScript libraries",
                    "priority": 9
                }
            ],
            "confidence": 100,
            "version": "1.13.2",
            "icon": "jQuery UI.svg",
            "website": "https://jqueryui.com",
            "pricing": [],
            "cpe": "cpe:2.3:a:jquery:jquery_ui:*:*:*:*:*:*:*:*"
        },
        "Underscore.js": {
            "name": "Underscore.js",
            "description": "Underscore.js is a JavaScript library which provides utility functions for common programming tasks. It is comparable to features provided by Prototype.js and the Ruby language, but opts for a functional programming design instead of extending object prototypes.",
            "slug": "underscore-js",
            "categories": [
                {
                    "id": 59,
                    "slug": "javascript-libraries",
                    "description": "Collections of pre-written JavaScript code",
                    "groups": [
                        9
                    ],
                    "name": "JavaScript libraries",
                    "priority": 9
                }
            ],
            "confidence": 100,
            "version": "1.13.6",
            "icon": "Underscore.js.png",
            "website": "https://underscorejs.org",
            "pricing": [],
            "cpe": null
        },
        "Moment.js": {
            "name": "Moment.js",
            "description": "Moment.js is a free and open-source JavaScript library that removes the need to use the native JavaScript Date object directly.",
            "slug": "moment-js",
            "categories": [
                {
                    "id": 59,
                    "slug": "javascript-libraries",
                    "description": "Collections of pre-written JavaScript code",
                    "groups": [
                        9
                    ],
                    "name": "JavaScript libraries",
                    "priority": 9
                }
            ],
            "confidence": 100,
            "version": "",
            "icon": "Moment.js.svg",
            "website": "https://momentjs.com",
            "pricing": [],
            "cpe": "cpe:2.3:a:momentjs:moment:*:*:*:*:*:*:*:*"
        },
        "jQuery": {
            "name": "jQuery",
            "description": "jQuery is a JavaScript library which is a free, open-source software designed to simplify HTML DOM tree traversal and manipulation, as well as event handling, CSS animation, and Ajax.",
            "slug": "jquery",
            "categories": [
                {
                    "id": 59,
                    "slug": "javascript-libraries",
                    "description": "Collections of pre-written JavaScript code",
                    "groups": [
                        9
                    ],
                    "name": "JavaScript libraries",
                    "priority": 9
                }
            ],
            "confidence": 100,
            "version": "3.7.1",
            "icon": "jQuery.svg",
            "website": "https://jquery.com",
            "pricing": [],
            "cpe": "cpe:2.3:a:jquery:jquery:*:*:*:*:*:*:*:*"
        }
    }
}

@rhoerr
Copy link
Author

rhoerr commented Jan 28, 2026

Thanks, I updated it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants