launchframe 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.clinerules CHANGED
@@ -1,76 +1,87 @@
1
- <!-- AUTO-GENERATED from AGENTS.md — do not edit directly.
2
- Run `bash scripts/sync-agent-rules.sh` to regenerate. -->
3
-
4
- <!-- BEGIN:nextjs-agent-rules -->
5
- # This is NOT the Next.js you know
6
-
7
- This version has breaking changes — APIs, conventions, and file structure may all differ from your training data. Read the relevant guide in `node_modules/next/dist/docs/` before writing any code. Heed deprecation notices.
8
- <!-- END:nextjs-agent-rules -->
9
-
10
- # Website Reverse-Engineer Template
11
-
12
- ## What This Is
13
- A reusable template for reverse-engineering any website into a clean, modern Next.js codebase using AI coding agents. The Next.js + shadcn/ui + Tailwind v4 base is pre-scaffolded — just run `/clone-website <url1> [<url2> ...]`.
14
-
15
- ## Tech Stack
16
- - **Framework:** Next.js 16 (App Router, React 19, TypeScript strict)
17
- - **UI:** shadcn/ui (Radix primitives, Tailwind CSS v4, `cn()` utility)
18
- - **Icons:** Lucide React (default — will be replaced/supplemented by extracted SVGs)
19
- - **Styling:** Tailwind CSS v4 with oklch design tokens
20
- - **Deployment:** Vercel
21
-
22
- ## Commands
23
- - `npm run dev` — Start dev server
24
- - `npm run build` — Production build
25
- - `npm run lint` — ESLint check
26
- - `npm run typecheck` — TypeScript check
27
- - `npm run check` — Run lint + typecheck + build
28
-
29
- ## Code Style
30
- - TypeScript strict mode, no `any`
31
- - Named exports, PascalCase components, camelCase utils
32
- - Tailwind utility classes, no inline styles
33
- - 2-space indentation
34
- - Responsive: mobile-first
35
-
36
- ## Design Principles
37
- - **Pixel-perfect emulation** — match the target's spacing, colors, typography exactly
38
- - **No personal aesthetic changes during emulation phase** — match 1:1 first, customize later
39
- - **Real content** — use actual text and assets from the target site, not placeholders
40
- - **Beauty-first** — every pixel matters
41
-
42
- ## Project Structure
43
- ```
44
- src/
45
- app/ # Next.js routes
46
- components/ # React components
47
- ui/ # shadcn/ui primitives
48
- icons.tsx # Extracted SVG icons as React components
49
- lib/
50
- utils.ts # cn() utility (shadcn)
51
- types/ # TypeScript interfaces
52
- hooks/ # Custom React hooks
53
- public/
54
- images/ # Downloaded images from target site
55
- videos/ # Downloaded videos from target site
56
- seo/ # Favicons, OG images, webmanifest
57
- docs/
58
- research/ # Inspection output (design tokens, components, layout)
59
- design-references/ # Screenshots and visual references
60
- scripts/ # Asset download scripts
61
- ```
62
-
63
- ## MOST IMPORTANT NOTES
64
- - When launching Claude Code agent teams, ALWAYS have each teammate work in their own worktree branch and merge everyone's work at the end, resolving any merge conflicts smartly since you are basically serving the orchestrator role and have full context to our goals, work given, work achieved, and desired outcomes.
65
- - After editing `AGENTS.md`, run `bash scripts/sync-agent-rules.sh` to regenerate platform-specific instruction files.
66
- - After editing `.claude/skills/clone-website/SKILL.md`, run `node scripts/sync-skills.mjs` to regenerate the skill for all platforms.
67
-
1
+ <!-- AUTO-GENERATED from AGENTS.md — do not edit directly.
2
+ Run `bash scripts/sync-agent-rules.sh` to regenerate. -->
3
+
4
+ <!-- BEGIN:nextjs-agent-rules -->
5
+ # This is NOT the Next.js you know
6
+
7
+ This version has breaking changes — APIs, conventions, and file structure may all differ from your training data. Read the relevant guide in `node_modules/next/dist/docs/` before writing any code. Heed deprecation notices.
8
+ <!-- END:nextjs-agent-rules -->
9
+
10
+ # Website Reverse-Engineer Template
11
+
12
+ ## What This Is
13
+ A reusable template for reverse-engineering any website into a clean, modern Next.js codebase using AI coding agents. The Next.js + shadcn/ui + Tailwind v4 base is pre-scaffolded — start a **new** project with **`/launchframe <url> "your saas idea"`** (runs **`npx launchframe@latest`**), or work in the current repo and run **`/clone-website <url1> [<url2> ...]`** to clone into this tree.
14
+
15
+ ## Tech Stack
16
+ - **Framework:** Next.js 16 (App Router, React 19, TypeScript strict)
17
+ - **UI:** shadcn/ui (Radix primitives, Tailwind CSS v4, `cn()` utility)
18
+ - **Icons:** Lucide React (default — will be replaced/supplemented by extracted SVGs)
19
+ - **Styling:** Tailwind CSS v4 with oklch design tokens
20
+ - **Deployment:** Vercel
21
+
22
+ ## Commands
23
+ - `npm run dev` — Start dev server
24
+ - `npm run build` — Production build
25
+ - `npm run lint` — ESLint check
26
+ - `npm run typecheck` — TypeScript check
27
+ - `npm run check` — Run lint + typecheck + build
28
+
29
+ ## Code Style
30
+ - TypeScript strict mode, no `any`
31
+ - Named exports, PascalCase components, camelCase utils
32
+ - Tailwind utility classes, no inline styles
33
+ - 2-space indentation
34
+ - Responsive: mobile-first
35
+
36
+ ## Design Principles
37
+ - **Pixel-perfect emulation** — match the target's spacing, colors, typography exactly
38
+ - **No personal aesthetic changes during emulation phase** — match 1:1 first, customize later
39
+ - **Real content** — use actual text and assets from the target site, not placeholders
40
+ - **Beauty-first** — every pixel matters
41
+ - **DOM crawl priority** — when walking the target page, emphasize **images** (raster, responsive sources, CSS backgrounds), **SVGs** (inline icons, sprites, masks), then **motion** (keyframes, transitions, scroll/time-driven animation, libraries). Scrape and save real assets from the DOM/network first; **create** a stand-in image or vector only when fetch/blocking prevents extraction, and label substitutes clearly in research notes so the clone stays auditable
42
+
43
+ ## Project Structure
44
+ ```
45
+ src/
46
+ app/ # Next.js routes
47
+ components/ # React components
48
+ ui/ # shadcn/ui primitives
49
+ icons.tsx # Extracted SVG icons as React components
50
+ lib/
51
+ utils.ts # cn() utility (shadcn)
52
+ types/ # TypeScript interfaces
53
+ hooks/ # Custom React hooks
54
+ public/
55
+ images/ # Downloaded images from target site
56
+ videos/ # Downloaded videos from target site
57
+ seo/ # Favicons, OG images, webmanifest
58
+ docs/
59
+ research/ # Inspection output (design tokens, components, layout)
60
+ design-references/ # Screenshots and visual references
61
+ scripts/ # Asset download scripts
62
+ ```
63
+
64
+ ## MOST IMPORTANT NOTES
65
+ - When launching Claude Code agent teams, ALWAYS have each teammate work in their own worktree branch and merge everyone's work at the end, resolving any merge conflicts smartly since you are basically serving the orchestrator role and have full context to our goals, work given, work achieved, and desired outcomes.
66
+ - After editing `AGENTS.md`, run `bash scripts/sync-agent-rules.sh` to regenerate platform-specific instruction files.
67
+ - After editing `.claude/skills/*/SKILL.md` (for example `clone-website` or `launchframe`), run `node scripts/sync-skills.mjs` to regenerate skill and command files for all platforms.
68
+
68
69
  # Website Inspection Guide
69
70
 
70
71
  ## How to Reverse-Engineer Any Website
71
72
 
72
73
  This guide outlines what to capture when inspecting a target website via Chrome MCP or browser DevTools.
73
74
 
75
+ ## Priority: media, SVGs, and motion (do this early)
76
+
77
+ When crawling the DOM and network, **tackle these before fine-tuning copy or spacing**:
78
+
79
+ 1. **Raster imagery** — Every `<img>`, `<picture>` / `source`, `srcset` / `sizes`, CDN URLs, lazy-loaded `data-src`, `loading="lazy"` nodes, **CSS `background-image`** on the element and ancestors (including `::before` / `::after`), masks that use `url()`, `<video>` still / poster frames. Prefer **downloading** originals via scripts or MCP; if a URL is blocked or session-gated, **export a screenshot** of the element’s bounding box at a crisp DPR and store it under `public/images/`, and note the substitute in the spec.
80
+ 2. **SVGs** — Inline `<svg>`, `<use>` / sprite sheets, **SVG in CSS** (`mask-image`, `background-image`), favicons as SVG, logo marks. Prefer extracting path/viewBox into React components or static files under `public/` — **recreate** from a screenshot/trace only when the markup is obfuscated or blocked.
81
+ 3. **Motion & animation** — Inspect Styles for `animation`, `animation-name`, `animation-timeline`, `transition`, `transform`, `@keyframes`; check for libraries (Framer Motion, GSAP, Lottie, Lenis). Capture **durations, easings, delays, fill-modes**, scroll/view triggers, and `prefers-reduced-motion` handling. Motion often defines perceived quality — do not leave it as an afterthought.
82
+
83
+ Then continue with typography, spacing, and component structure as usual.
84
+
74
85
  ## Phase 1: Visual Audit
75
86
 
76
87
  ### Screenshots to Capture