UIHarvest is a monorepo for scraping a live website and turning it into a structured design output (tokens, components, screenshots, assets, and AI design memory).
If you only want to run and test quickly, use apps/scraper.
apps/scraper- main app for URL input, extraction, and output UIapps/server- backend for studio/chat/project APIsapps/web- studio frontendpackages/*- shared auth/db/types/ui packages
- Bun 1.x
- Node.js 20+
- Chromium binaries for Playwright
From repo root:
bun install
bunx playwright install chromiumcp apps/scraper/.env.example apps/scraper/.envMinimum required in apps/scraper/.env:
GOOGLE_CLOUD_API_KEY=your_key_hereOptional:
SITE_PASSWORD(example/default:654321)GOOGLE_CLOUD_PROJECTGCS_BUCKET
bun run --cwd apps/scraper devOpen:
- UI:
http://localhost:5173 - API:
http://localhost:3333
In the UI:
- Paste a website URL.
- Start extraction.
- Watch progress.
- Review the final extracted output in the app.
After a successful run, UIHarvest gives you:
- Design tokens (colors, typography, spacing, radii, shadows)
- Component extraction with screenshots and metadata
- Downloaded assets (images, SVGs, fonts)
- Structured JSON output for programmatic use
- AI design memory files (when
GOOGLE_CLOUD_API_KEYis set)
Typical output is saved under the scraper output folder and shown in the local UI while the job runs.
- Faster UI reverse-engineering from any live website
- Better handoff for developers and AI code generation
- Reusable design tokens for new projects
- Visual references (screenshots/assets) for accurate rebuilds
- Repeatable extraction flow for testing and benchmarking
From repo root:
bun run --cwd apps/scraper test
bun run --cwd apps/scraper typecheckManual smoke test:
- Run
bun run --cwd apps/scraper dev - Open
http://localhost:5173 - Enter
https://example.com - Confirm extraction starts, progresses, and shows a final result
From repo root:
bun run dev
bun run build
bun run typecheckgcloud auth login
gcloud config set project <your-project-id>
cd apps/scraper
./deploy.shapps/scraper/README.mdcontains the full reproducibility guide used for submission.- Without
GOOGLE_CLOUD_API_KEY, AI phases are skipped.
MIT