PageScan is a Chrome extension that extracts a website's visual style system from the active tab and turns it into structured markdown you can use immediately.
It generates:
DESIGN.mdoutput for design direction and UI implementationSKILL.mdoutput for AI-assisted workflows (Claude Code, Codex, Stitch, etc.)
Repository: https://github.com/viainti/PageScan
PageScan helps you go from visual inspiration to implementation faster by extracting key style tokens from any website:
- Colors
- Typography
- Border radius
- Spacing patterns
Main use cases:
- Build consistent UI faster
- Create reusable design context for AI tools
- Turn reference websites into actionable style guides
- Chrome Extension (Manifest V3)
- Popup UI built with Next.js + Tailwind CSS
- One-click extraction from current tab
- Markdown generation in 2 modes (
DESIGN.md,SKILL.md) - Copy-to-clipboard output
- Next.js 16
- React 19
- TypeScript
- Tailwind CSS 4
- Chrome Extensions API (
activeTab,scripting)
src/app/page.tsx— extension popup UI and extraction logicpublic/manifest.json— Chrome extension manifestscripts/pack-extension.mjs— builds a Chrome-loadable package indist-extension/dist-extension/— final unpacked extension folder to load in Chrome
git clone https://github.com/viainti/PageScan.git
cd PageScannpm installnpm run devThis starts a local Next.js preview so you can iterate on UI quickly.
npm run build
npm run build:extensionAfter this, the extension package is available in:
dist-extension/
- Open
chrome://extensions - Enable Developer mode (top-right)
- Click Load unpacked
- Select your local
dist-extension/folder - Pin PageScan from the extensions menu
Important:
- Load
dist-extension/, notout/
- Open any normal website (
https://orhttp://) - Click the PageScan extension icon
- Choose mode:
DESIGN.mdorSKILL.md - Click Refresh to extract styles from the active tab
- Click Copy to copy generated markdown
activeTab: access only the current active tab when the user triggers extractionscripting: run extraction script on the active page to read computed styleshost_permissions(<all_urls>): allow extraction on any user-selected website
Last updated: April 19, 2026
PageScan processes only what is needed to perform user-triggered extraction from the active tab:
- Active tab URL
- Page title
- Computed visual style data (colors, fonts, radius, spacing)
PageScan does not:
- collect passwords or login credentials
- sell or share user data
- run background crawling
- track browsing silently
Data handling:
- Processing is performed locally in the browser
- Generated output is shown in the popup
- User chooses whether to copy/export the output
For Chrome Web Store uploads, use the packaged folder output and zip its contents correctly so manifest.json is in the root of the zip.
Add your preferred license in this repository if not already defined.