@XAMTO_AI: Wow! Just found a crazy plugin — after installing it, you can directly see the tech stack of any webpage! Front-end frameworks, backends, CDNs all exposed. Click on names to jump to official sites. Even getting a quick overview is this intense in the AI era? Jump on it and research before others leave you in the dust. https://github.com/setube/stac…
Summary
Introducing StackPrism, a browser extension that automatically identifies the tech stack of web pages, including front-end frameworks, backends, and CDNs. Supports Chrome/Edge/Firefox, built on Manifest V3, collects clues through multiple channels and presents them in a categorized view.
View Cached Full Text
Cached at: 06/05/26, 05:05 AM
Holy cow! Just found an insane plugin — after installing it, opening any webpage directly reveals the tech stack! Frontend frameworks, backend, CDN, all laid out. Click on the name and it jumps to the official site. Even casual recon is this competitive in the AI era? Hop on and check it out, don’t wait until everyone else has already left you in the dust. 🔗 https://t.co/xHjlKPQb7x https://t.co/Jrlp0UkY2y — # setube/stackprism Source: https://github.com/setube/stackprism Chrome Web Store (https://chromewebstore.google.com/detail/stackprism/cagpdifljieeiajlhlcboelglkalofak) Edge Add-ons (https://microsoftedge.microsoft.com/addons/detail/stackprism/ojgmhlogaoiegdonnlnibeoikbleccno) Firefox Add-ons (https://addons.mozilla.org/firefox/addon/stackprism/) License: CC BY-NC-SA 4.0 (https://creativecommons.org/licenses/by-nc-sa/4.0/) Manifest V3 (https://developer.chrome.com/docs/extensions/develop/migrate/what-is-mv3) Platform PRs welcome! (https://github.com/setube/stackprism/issues) # StackPrism / 栈棱镜 —— Web Technology Stack Detection Browser Extension > Collects clues from 6 dimensions: page runtime, DOM, resource URLs, response headers, dynamic loading, and source code copyright comments. Then categorizes the frontend and backend stack used by the site. Introduction • Features • Rule Maintenance • Notes • Contributing • Sponsors • Star History • License ## Introduction StackPrism (referred to as 栈棱镜) is a web technology stack detection extension based on Manifest V3, supporting Chrome / Edge / Firefox. Unlike most similar tools that only check HTML resource URLs, StackPrism decouples detection into 4 independent channels that collect clues in parallel: - Static Scanning: Injected script scans DOM, global variables, CSS class names, CSS variables, at page load - **Response Header Observation**: Service Worker listens to `webRequest.onHeadersReceived` to capture response headers and HTTP versions of the main document/XHR/iframes - **Dynamic Resource Monitoring**: content script uses `PerformanceObserver` + `MutationObserver` to accumulate newly loaded scripts/styles/iframes/feeds after user interaction - **JS Copyright Comment Scanning**: background asynchronously fetches the main bundle's opening copyright comments to identify third-party dependencies bundled into `index/main/vendor` chunks The results from all 4 channels are merged, deduplicated, and displayed grouped into 50+ categories. Active convergence measures are applied for scenarios like **forged response headers, self-referencing detection, and fuzzy false positives**. ### Technical Features - **MV3 service worker architecture**: no permanent background process, event-driven, low memory footprint - **Rules as data**: 50+ JSON rule files (`public/rules/`) centrally maintained; during build, hint prefilters and keyword combined regexes are precompiled; runtime only matches candidates that hit ### Detection Coverage | Dimension | Example Categories | | ------ | ----------------------------------------------- | | Frontend | Frontend Framework / UI Framework / Frontend Library / Build & Runtime | | Server | Web Server / Backend Framework / CDN & Hosting / Programming Language | | Content | CMS / Theme Template / CMS / E-commerce Platform / RSS | | Third-party | SaaS / Monitoring Probes / AI LLMs / Social Login / Payment | | Marketing | Ads / Marketing / Analytics / Tag Management | | Security | HTTPS / HTTP/2 / HTTP/3 / CSP / Cookie Consent | ### Installation **From source (development mode)**: ```bash git clone https://github.com/setube/stackprism.git cd stackprism pnpm install pnpm run build # Chrome / Edge pnpm run build:firefox # Firefox ``` **Chrome / Edge:** 1. Open `chrome://extensions` or `edge://extensions` 2. Enable "Developer mode" in the top right corner 3. Click "Load unpacked" and select the `dist/` directory 4. Visit any webpage; the extension icon will show the detection count **Firefox:** 1. Open `about:debugging#/runtime/this-firefox` 2. Click "Load Temporary Add-on" and select `dist-firefox/manifest.json` 3. Or after running `pnpm run build:firefox`, grab the `.xpi` file from the `release/` directory and double-click to install ### Development ```bash pnpm run dev # development mode + HMR pnpm run typecheck # vue-tsc type checking pnpm run lint # ESLint pnpm run build # production build (includes rule precompilation) pnpm run build:firefox # Firefox build + .xpi packaging pnpm run docs:dev # VitePress docs site local preview ``` ## Rule Maintenance StackPrism's rule system is data-driven – the vast majority of detections can be done by modifying rule JSON files without touching code. - **Load Manifest**: [public/rules/index.json](public/rules/index.json) lists all rule files to load - **Page Rules**: `public/rules/page/*.json` handle page source, DOM, resource URLs, dynamic resources - **Header Rules**: `public/rules/headers/*.json` handle server response headers and cookies - **Self-Reference Suppression**: [public/rules/self-host-suppress.json](public/rules/self-host-suppress.json) skips detection of the same name when the user is on a major site that hosts it - **Tech Links**: [public/tech-links.json](public/tech-links.json) centrally maintains mappings from technology names to official site/repo URLs; detection results are clickable - **Build-time Prefilter**: `precompileRulesPlugin` in [vite.config.ts](vite.config.ts) injects `__hints` (top 3 longest literal segments, deduplicated and sorted) and `__keywordCombined` (combined regex for keywords) into each leaf rule during the `closeBundle` phase; at runtime, `rule-matcher.ts` uses them first as candidate filters Fields for new rules: ```jsonc { "name": "Technology name", "category": "Frontend Framework", // one of 50+ categories "patterns": ["regex or keywords"], "matchType": "regex", // or "keyword" "matchIn": ["html", "resources", "url", "headers", "dynamic"], "confidence": "High", // High / Medium / Low "kind": "Type description", "selectors": ["CSS selectors"], "globals": ["window global variable names"], "classPrefixes": ["class name prefixes"] } ``` ### Rule Quality Constraints - Prefer **high-signal indicators**: response headers, proprietary resource URLs,, window., exclusive CSS selectors, JS copyright comments, official SDK package names - Avoid short or overly broad keywords (spring / phoenix / column / container – these can hit competitor discussions, Bootstrap & Tailwind common classes) - Prefer to restrict matchIn; prioritize resources / url / headers over bare html, to reduce false positives from body text ## Notes - Backend detection is not guaranteed complete: many sites hide Server / X-Powered-By and similar response headers; backend results are shown as “clue + confidence level” - Forged response headers: the extension actively detects scenarios where ≥4 different identity fields exist simultaneously, downgrading related categories to low confidence with a warning. However, a single forged header cannot be identified; it’s recommended to cross-reference with other clues - Please refresh the target page after first installation: to let the service worker capture the main document’s response headers - Source code search is a DOM snapshot: based on the current page’s outerHTML, not necessarily the original HTML returned by the server - Chrome system pages / store pages / built-in pages usually do not allow injection of detection scripts - Dynamic monitoring accumulates asynchronously: the content script accumulates newly loaded resources after user interaction in the background; reopening the popup shows the merged results ## Contributing StackPrism currently has 2000+ detection rules across 50+ categories, but the frontend ecosystem changes rapidly. Contributions for new frameworks, new SaaS, rule false positives are all welcome: - Bug / Misidentification / Missed detection feedback: Issues (https://github.com/setube/stackprism/issues) – click the “Inaccurate detection” button directly on the popup to auto-fill the issue template - Rule contributions: click “Submit rule contribution” in the extension settings page, or submit a PR directly to public/rules/ - Discussion & proposals: Discussions (https://github.com/setube/stackprism/discussions) Before submitting code, please run pnpm run typecheck && pnpm run lint && pnpm run build and make sure all three checks pass. ## Star History If you find this helpful, please give a star so more people can see the project. ## License This project is licensed under CC BY-NC-SA 4.0 (https://creativecommons.org/licenses/by-nc-sa/4.0/) – free non-commercial use and modification allowed, must provide attribution, and derivative works must be under the same license. Full legal text is in LICENSE. > Amto (@XAMTO_AI): > > Damn, a simple format conversion tool that blew up to over 70k stars? > > Guys, here’s the thing: Microsoft made something called MarkItDown, and its job is extremely straightforward. > > The core is two words: unify. > > Throw in Word, PDF, Excel, PPT, images, audio, HTML, JSON, archives – it all comes out as formatted Markdown: headings, lists, tables, link structures, everything intact.
Similar Articles
@QingQ77: Tell the Agent which website to control in one sentence, and it automatically generates a CLI tool for you, directly using your logged-in Chrome browser, no API or token required. https://github.com/better-world-ai/x-cli… x-cl…
x-cli is an open-source project that uses an AI agent to automatically generate CLI tools for controlling web pages, leveraging the logged-in session of Chrome without needing an API or token. It supports generating a CLI in one sentence after installing the Kimi WebBridge plugin, and comes with built-in example tools like Baidu Search and Google Search.
@seclink: AI Website Design & Creator SaaS Platform — Information Gap Analysis I. The Core Information Gap: The "New Species" Hardly Discussed in China 1. http://Bolt.new — In-Browser Full-Stack Development, No Local Environment Needed StackBlitz did something radical: using WebContainer technology to run Node.js...
Bolt.new is an in-browser full-stack AI development tool that allows users to create websites and apps via chat, supporting design system integration and cloud deployment.
Real Chrome. Live DOM. MCP tools. Multi tab control. Visible progress.
A new tool enabling AI agents to browse the web using a real Chrome instance with live DOM access, MCP tools, and multi-tab control.
@QingQ77: Let AI coding tools share a persistent memory between browser chats and IDEs, saving the need to re-explain context each time. https://github.com/Eshaan-Nair/ArcRift… ArcRift is a local-first AI memory layer. Chrome extension captures C…
ArcRift is a local-first AI memory layer that shares persistent memory between browser chats and IDE tools via a Chrome extension and MCP Server, avoiding repeated context explanations.
@axichuhai: Folks, this open-source project is like having a god's-eye view, boosting web scraping efficiency tens of times over. It has topped GitHub trending with 50k+ stars. No more writing code, maintaining selectors, or dealing with anti-scraping measures. Just drop in a URL, zero-code, naturally bypass blocks, no need to maintain selectors...
This open-source project can scrape web data with zero code, bypass anti-scraping mechanisms, boost efficiency tens of times, and has earned 50k+ stars.