--- name: webconsulting-create-documentation description: Create product documentation with help pages, AI-generated screenshots, Remotion product videos with TTS narration and background music, and GitHub README visual documentation. Use when asked to create documentation, a help page, product tour video, generate screenshots, add user guides, or enrich a GitHub README. --- # webconsulting — Create Documentation End-to-end workflow for building product documentation: help pages, AI-generated illustrations, narrated product tour videos (Remotion + ElevenLabs TTS + Suno AI music), and GitHub README visual documentation. ## Prerequisites ### Required | Dependency | Install | Purpose | |------------|---------|---------| | Node.js 20+ | Pre-installed | Runtime | | Remotion | `npm install remotion @remotion/cli @remotion/player` | Video composition | | qrcode.react | `npm install qrcode.react` | QR codes in end card | | tsx | `npm install -D tsx` | Run TypeScript scripts | ### Optional (for production quality) | Dependency | Install | Purpose | |------------|---------|---------| | ElevenLabs API key | [elevenlabs.io](https://elevenlabs.io) | Premium TTS narration (Jony Ive voice) | | ffmpeg | `brew install ffmpeg` | Convert audio to MP3 (smaller files) | | macOS `say` + `afconvert` | Built-in on macOS | Fallback TTS (Daniel voice, outputs WAV) | | Suno API key | [api.box](https://www.api.box) | AI-generated background music | ### ElevenLabs Setup 1. Create a free account at [elevenlabs.io](https://elevenlabs.io) 2. Navigate to **Profile + API key** in the sidebar 3. Copy your API key 4. Add to your `.env` file: ```bash ELEVENLABS_API_KEY=your-api-key-here ``` Also add to `.env.example` (commented out) for team documentation: ```bash # ELEVENLABS_API_KEY=your-elevenlabs-api-key ``` **Voice selection**: The default voice is "Daniel" (`onwK4e9ZLuTAKqWW03F9`) — British, calm. Browse [elevenlabs.io/voice-library](https://elevenlabs.io/voice-library) and update the `VOICE_ID` in `scripts/generate-narration.ts` if a better match is found. **Free tier limits**: ~10,000 characters/month. The full narration script is ~600 characters, so you can regenerate ~16 times per month on the free tier. ## Workflow Overview ``` 1. Create help page → React component with collapsible sections 2. Generate illustrations → AI image generation tool (GenerateImage) 3. Build Remotion video → Animated scenes with narration subtitles 4. Generate TTS audio → ElevenLabs API or macOS `say` fallback 5. Generate music → Suno AI background music (optional) 6. Render final video → npm run remotion:render 7. GitHub README → Embed screenshots + video in README.md ``` ## Phase 1: Help Page Create an in-app help page at `src/app/(dashboard)/help/page.tsx`. ### Structure pattern ```tsx // Collapsible section wrapper function HelpSection({ id, icon, title, description, children, defaultOpen }) { const [open, setOpen] = useState(defaultOpen); return ( {open && {children}} ); } // Step-by-step instruction function Step({ number, title, children }) { /* numbered step */ } // Pro tip callout function Tip({ children }) { /* highlighted tip box */ } // Screenshot placeholder function Screenshot({ src, alt, caption }) { /* Next/Image with caption */ } ``` ### Key sections to include 1. **Table of Contents** — auto-generated from section data with anchor links 2. **Getting Started** — first-time user orientation (default open) 3. **Feature sections** — one per major feature (Dashboard, Clients, Extensions, etc.) 4. **Product Video** — embedded `