@nirholas/look
v2.1.2
Published
AI-powered product demo video generator - one command, professional results
Maintainers
Readme
L👀K
One command. Professional product demo videos.
Turn any website into a polished demo video with AI-generated voiceover. No editing required.
npx look-demo quick https://your-app.comThat's it. You get a professional demo video in minutes.
📚 Documentation
| Guide | Description | |-------|-------------| | Getting Started | Installation and first demo | | CLI Reference | Complete command reference | | Web Editor | Visual editing interface | | Live Recording | Real-time recording with preview | | Mobile Setup | Android/iOS app recording | | API Documentation | Programmatic usage | | Customization | Cursors, effects, zoom modes | | Theme Presets | Pre-built theme configurations | | Overlays & Effects | Captions, lower thirds, spotlights | | Export Formats | GIF, thumbnail, platform presets | | Intelligent Pipeline | AI orchestration & story arcs | | FAQ | Frequently asked questions | | Troubleshooting | Common issues and solutions |
Project: Roadmap • Changelog • Contributing • Support
What It Does
- Records your site with smooth cursor animations
- Analyzes the UI using GPT-4 Vision
- Writes a compelling voiceover script
- Narrates with natural AI voice
- Exports a polished video ready for YouTube, Twitter, etc.
Installation
npm install -g look-demoRequirements:
- Node.js 18+
- FFmpeg:
brew install ffmpeg(Mac) orapt install ffmpeg(Linux) - OpenAI API key:
export OPENAI_API_KEY=sk-...
Quick Start
Fastest Way (Recommended)
look quick https://your-app.comThis uses smart defaults to create a great demo automatically.
Full Control
look demo https://your-app.com \
--output demo.mp4 \
--duration 30 \
--voice nova \
--style professional \
--zoom-mode smartJust Preview (No Recording)
look demo https://your-app.com --dry-runSee the AI analysis and script before recording.
Multi-Page Walkthrough
Want the AI to explore your entire site? Use the walkthrough command:
look walkthrough https://your-app.com --max-pages 5This will:
- Discover all pages on your site
- Prioritize which pages are most important for a demo (features, pricing, etc.)
- Navigate through them intelligently
- Generate a coherent narrative across all pages
# Preview what pages will be visited
look walkthrough https://your-app.com --dry-run
# Focus on specific areas
look walkthrough https://your-app.com --focus pricing
look walkthrough https://your-app.com --focus technicalFeatures
- 🎬 Smart Zoom - Camera follows cursor with smooth, professional movement
- 🖱️ Cursor Effects - Beautiful cursor with click ripple animations
- 🤖 AI Vision - GPT-4V understands your UI and writes the script
- 🗣️ AI Voice - Natural voiceover with OpenAI TTS
- 📹 60fps Recording - Silky smooth browser capture
- 🎨 Pro Polish - Color grading, vignette, motion blur
- 📱 Multi-Platform - Export for YouTube, Twitter, Instagram, TikTok
- 🗺️ Site Explorer - AI navigates through multiple pages automatically
- 🖥️ Web Editor - Enterprise-grade visual editing interface
- 📋 Templates - Pre-built configurations for common use cases
Enterprise Features
- 🧠 Intelligent Orchestration - 5-phase AI pipeline with quality scoring and auto-optimization
- 📊 Product Intelligence - Auto-detects product category, value props, and target audience
- 🎭 Story Arcs - 5 narrative templates: Problem→Solution, Feature Showcase, Journey, Before/After, Quick Demo
- ⏱️ Smart Pacing - Content-aware timing that syncs with voiceover
- 🎬 Visual Moments - Auto-detects animations, charts, forms for optimal capture
- 🎙️ Voice Enhancement - SSML generation, multi-voice support, emotion markers
- 📝 Animated Captions - Karaoke, pop, typewriter, fade subtitle styles
- 🎨 Lower Thirds - Professional name/title overlays with animations
- ⌨️ Keyboard Visualizer - Display shortcuts (Mac/Windows style)
- 🔍 Spotlight & Callouts - Focus attention with arrows, badges, highlights
- 🎞️ Scene Transitions - Fade, blur, slide, zoom between scenes
- 🖼️ GIF Export - High-quality palette-optimized GIF conversion
- 📸 Auto Thumbnails - AI-powered best frame selection
- 💧 Watermarks - Text or logo overlays with positioning
- 📊 Progress Bars - Visual timeline indicators
- 🎬 Intro/Outro - Animated branded intro and CTA outro cards
Web Editor
Start the visual editor for a more interactive experience:
look serveFeatures
- First-run onboarding - Guided tour of key features
- Settings panel - Configure API keys directly in the browser
- Templates - Pre-built demo configurations (SaaS, E-commerce, Portfolio, etc.)
- Built-in docs - Access documentation without leaving the editor
- Live recording - Real-time preview while recording
- Timeline editing - Visual editing of markers, zoom, and effects
- Keyboard shortcuts - Press
Shift + ?to view all shortcuts
API Key Setup
You can configure API keys in two ways:
- Environment variables (CLI):
export OPENAI_API_KEY=sk-... - Web UI Settings: Click ⚙️ Settings → API Keys → Enter your keys
See Web Editor Guide for full documentation.
Options
Demo Command
look demo <url> [options]| Option | Description | Default |
|--------|-------------|---------|
| -o, --output | Output file path | ./demo.mp4 |
| -d, --duration | Video duration (seconds) | 25 |
| -v, --voice | TTS voice (nova, alloy, echo, fable, onyx, shimmer) | nova |
| -s, --style | Script style (professional, casual, energetic) | professional |
| -p, --preset | Export preset (youtube, twitter, instagram, tiktok) | youtube |
| --zoom-mode | Zoom behavior (none, basic, smart, follow) | smart |
| --zoom-intensity | Follow camera intensity (0-1) | 0.5 |
| --max-zoom | Maximum zoom level | 1.8 |
| --skip-voice | Generate video without voiceover | false |
| --skip-analysis | Skip AI analysis (faster) | false |
| --reliable | Use robust V2 engine | false |
| --dry-run | Preview script without recording | false |
Cursor & Click Effects
| Option | Description | Default |
|--------|-------------|---------|
| --cursor | Cursor style (default, pointer, dot, circle, none) | default |
| --cursor-size | Cursor size in pixels | 24 |
| --cursor-color | Cursor color (hex) | #000000 |
| --click-effect | Click effect (ripple, pulse, ring, spotlight, none) | ripple |
| --click-color | Click effect color (hex) | #3B82F6 |
Examples
# Quick demo - just works
look quick https://stripe.com
# Twitter-ready short video
look demo https://myapp.com -d 15 -p twitter
# Energetic style for launch
look demo https://myapp.com -s energetic -v alloy
# Silent demo (no voiceover)
look demo https://myapp.com --skip-voice
# Maximum zoom follow-cam
look demo https://myapp.com --zoom-mode follow --zoom-intensity 0.8
# Subtle, professional look
look demo https://myapp.com --zoom-mode basic --max-zoom 1.3
# Intelligent demo with AI orchestration
look demo https://myapp.com --intelligent --story-arc problem-solution
# Export as GIF for README
look gif video.mp4 --width 480 --fps 12 -o demo.gif
# Auto-generate YouTube thumbnail
look thumbnail video.mp4 --auto --preset youtube -o thumb.png
# Add animated captions
look captions video.mp4 --style karaoke --apply output.mp4
# Add lower third overlay
look overlay video.mp4 --lower-third "John Smith:CEO" -o output.mp4
# Batch process multiple sites
look batch --config demos.yaml --concurrency 2📱 Mobile App Recording
Record demos of Android apps with Docker (no Android Studio setup required).
Quick Start
# Start the Android emulator + Appium (first run takes 2-3 min)
look mobile-start
# Check when ready
look mobile-status
# Record your app
look mobile ./your-app.apk
# Stop when done
look mobile-stopMobile Commands
| Command | Description |
|---------|-------------|
| look mobile-start | Start Android emulator + Appium in Docker |
| look mobile-stop | Stop the container |
| look mobile-status | Check if ready for recording |
| look mobile-logs | View container logs |
| look mobile <app> | Record a mobile app demo |
Requirements
- Docker Desktop installed and running
- 8GB+ RAM available
- Your app as an
.apkfile
See Mobile Setup Guide for full documentation and iOS instructions.
How It Works
URL → Screenshot → GPT-4V Analysis → Script → Record Browser →
→ Add Cursor → Apply Zoom → Add Click Effects →
→ Color Grade → Generate Voice → Combine → ExportThe magic is in the orchestration. LooK handles dozens of steps automatically to produce professional results.
Troubleshooting
"FFmpeg not found"
Install FFmpeg:
- Mac:
brew install ffmpeg - Linux:
sudo apt install ffmpeg - Windows: Download from ffmpeg.org
"OpenAI API error"
Set your API key:
export OPENAI_API_KEY=sk-your-key-hereVideo looks choppy
- Ensure you have enough disk space
- Try reducing duration:
-d 15 - Use a faster preset:
--preset twitter
Cursor not visible
- Check cursor style:
--cursor default - Increase size:
--cursor-size 32
License
All rights reserved. See LICENSE.
🤝 Contributing
We welcome contributions! Here's how you can help:
Quick Start for Contributors
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/LooK.git cd LooK - Install dependencies:
npm install - Run tests:
npm test look test --full - Make your changes
- Submit a pull request
Ways to Contribute
- 🐛 Report bugs - Open an issue
- 💡 Suggest features - Start a discussion
- 📖 Improve docs - Fix typos, add examples
- 🔧 Submit PRs - Bug fixes, new features
- ⭐ Star the repo - Show your support!
Development Setup
# Install dependencies
npm install
# Run the CLI locally
node bin/repovideo.js demo https://example.com
# Start the web UI in dev mode
npm run dev:ui
# Build the web UI
npm run build:uiCode Style
- Use ES modules (
import/export) - Prefer async/await over callbacks
- Add JSDoc comments for public functions
- Keep commits focused and descriptive
See ROADMAP.md for planned features.
Built with ❤️ by nichbot
Documentation
Full documentation site: https://nirholas.github.io/LooK/
- Getting started covers install and first run.
- Examples has copy-paste snippets.
