Transform your React, Next.js, or Tailwind project's UI using design language extracted from reference websites.
This is not an AI website builder or a chatbot. It is a Design Context Engine — a pipeline that captures visual design systems from high-quality reference sites and applies them to your existing project while preserving all functionality.
Upload Project → Add Reference URLs → Capture Screenshots →
Extract Design Context → Rewrite UI → Preview → Download
- Upload — Drop a ZIP or paste a GitHub repo URL. The framework is auto-detected.
- Reference — Paste 1–5 URLs of websites with the design language you want.
- Analyze — Puppeteer captures desktop screenshots, then a vision AI extracts the design system into structured JSON (typography, colors, spacing, borders, buttons, cards, animations, principles).
- Rewrite — A coding model rewrites your UI files applying the extracted design context. All functionality, routing, API logic, and state management are preserved.
- Preview — Toggle between before and after file views.
- Download — Get a ZIP of the transformed project.
AI produces significantly better UI when given structured design context extracted from high-quality reference websites.
The emphasis is on the Design Context workflow — extracting reusable design principles rather than generating prompts or building sites from scratch.
src/
├── app/
│ ├── api/
│ │ ├── upload/ # ZIP upload + framework detection
│ │ ├── analyze/ # Screenshot capture + vision analysis
│ │ ├── rewrite/ # AI-powered UI transformation
│ │ └── download/ # Transformed project ZIP export
│ ├── page.tsx # Main UI
│ └── layout.tsx
├── components/
│ ├── UploadZone.tsx # Drag-and-drop ZIP upload
│ ├── ReferenceUrls.tsx # URL input (1–5)
│ ├── DesignContextView.tsx # Extracted design system display
│ └── Preview.tsx # Before/after file diff
├── hooks/
│ └── usePipeline.ts # State machine driving the full flow
└── lib/
├── ai/
│ ├── provider.ts # AIProvider interface
│ └── groq-provider.ts # Groq API (qwen3.6-27b)
├── modules/
│ ├── upload/ # ZIP extraction + framework detection
│ ├── screenshot/ # Puppeteer screenshot capture
│ ├── design-context/ # Vision AI → Design Context JSON
│ ├── rewrite/ # Coding AI → UI transformation
│ ├── preview/ # Before/after snippet generation
│ └── export/ # ZIP packaging
├── types.ts
├── config.ts
└── storage.ts
The AI layer is abstracted behind a single AIProvider interface in src/lib/ai/provider.ts. Swap models or providers without changing application code:
export interface AIProvider {
analyzeScreenshots(screenshots: string[]): Promise<DesignContext>;
rewriteProject(files, designContext, framework): Promise<ProjectFile[]>;
}- Framework — Next.js (App Router)
- Language — TypeScript
- Styling — Tailwind CSS v4 (dark mode, Linear-inspired)
- AI — Groq API (qwen3.6-27b)
- Screenshots — Puppeteer
- ZIP — adm-zip
- Node.js 18+
- A Groq API key
git clone https://github.com/Parithosh-Varma/DESIGNcontext.git
cd DESIGNcontext
npm installCreate .env.local:
GROQ_API_KEY=gsk_your_key_here
AI_MODEL=qwen3.6-27bStart the dev server:
npm run devOpen http://localhost:3000.
- Export your React/Next.js/Tailwind project as a ZIP, or use a GitHub repository URL.
- Drop the ZIP on the upload area, or switch to GitHub Repo mode and paste the URL.
- Paste 1–5 reference website URLs.
- Click Analyze — screenshots are captured and the design system is extracted.
- Review the extracted Design Context.
- Click Transform UI — the AI rewrites your UI.
- Toggle Before/After to compare.
- Click Download Transformed Project.
The app's own interface follows the principles it encodes:
- No emojis
- No gradients
- One accent color (blue)
- Large whitespace
- Excellent typography (Geist)
- Dark mode by default
- Purposeful animations only