Generate real estate marketing videos from property data. Use when creating property showcases, social media content, market reports, or neighborhood tours. Integrates Firecrawl scraped data with Remotion rendering.
Scanned 9/2/2026
Install to Claude Code
npx -y skills add majiayu000/claude-skill-registry --skill apex-video-generator --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Apex Video Generator?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/majiayu000-apex-video-generator-claude-skill-registry)More formats (shields.io, HTML) on the badges page.
---
name: apex-video-generator
description: Generate real estate marketing videos from property data. Use when creating property showcases, social media content, market reports, or neighborhood tours. Integrates Firecrawl scraped data with Remotion rendering.
allowed-tools: Read, Grep, Glob, Bash, Edit, Write
---
# Apex Real Estate Video Generator
## Video Types
| Type | ID | Duration | Aspect | Use Case |
|------|-----|----------|--------|----------|
| Property Showcase | `property-showcase` | 30s | 16:9 | Listing promotion |
| Social Short | `social-short` | 9s | 9:16 | TikTok/Reels |
| Market Stats | `market-stats` | 20s | 16:9 | Monthly reports |
| Neighborhood Tour | `neighborhood-tour` | 45s | 16:9 | Area marketing |
| Agent Intro | `agent-intro` | 15s | 9:16 | Personal branding |
| Testimonial | `testimonial` | 20s | 16:9 | Social proof |
| Just Listed | `just-listed` | 12s | 9:16 | New listing alert |
| Just Sold | `just-sold` | 12s | 9:16 | Sales proof |
| Open House | `open-house` | 15s | 9:16 | Event promotion |
| Price Drop | `price-drop` | 10s | 9:16 | Price reduction |
## Data Flow
```
[Listing URL] → [Firecrawl Extract] → [Property Data]
↓
[AI Script Generator] ← [Property Data + Video Type]
↓
[Remotion Composition] → [Rendered Video]
↓
[Optional: OpenAI TTS] → [Voiceover Audio]
```
## API Usage
### Generate Video
```typescript
POST /api/video/generate
{
listingUrl: "https://zillow.com/...",
videoType: "property-showcase",
voiceoverEnabled: true,
branding: {
agentName: "John Doe",
brokerageName: "Apex Realty",
logoUrl: "https://...",
primaryColor: "#0dccf2"
}
}
// Response
{
success: true,
videoId: "vid_abc123",
status: "rendering",
estimatedTime: 120 // seconds
}
```
### Check Status
```typescript
GET /api/video/status?id=vid_abc123
{
status: "complete",
videoUrl: "https://storage.../video.mp4",
thumbnailUrl: "https://storage.../thumb.jpg",
duration: 30,
propertyData: { ... }
}
```
## Template Details
See individual rules for each video type:
- **Property Showcase**: See [rules/property-showcase.md](rules/property-showcase.md)
- **Social Shorts**: See [rules/social-shorts.md](rules/social-shorts.md)
- **Market Stats**: See [rules/market-stats.md](rules/market-stats.md)
- **Neighborhood Tour**: See [rules/neighborhood-tour.md](rules/neighborhood-tour.md)
- **Testimonial**: See [rules/testimonial-video.md](rules/testimonial-video.md)
## Branding System
All videos support custom branding:
- Agent name and photo
- Brokerage logo
- Primary accent color
- Contact information
- Social media handles
- Custom fonts (from Google Fonts)
## Scene Structure
### Property Showcase (30s)
1. **Hook** (0-3s): Stunning hero shot + price
2. **Stats** (3-7s): Beds, baths, sqft animation
3. **Gallery** (7-20s): Photo slideshow with Ken Burns
4. **Features** (20-25s): Key highlights list
5. **CTA** (25-30s): Contact info + logo
### Social Short (9s)
1. **Hook** (0-2s): Eye-catching visual + text
2. **Value** (2-6s): 3 key stats animated
3. **CTA** (6-9s): Swipe up / Contact
## Integration Points
- **Firecrawl**: Property data extraction
- **Gemini AI**: Script generation
- **OpenAI TTS**: Voiceover generation
- **Remotion Lambda**: Cloud rendering
- **Supabase Storage**: Video hosting
- **Convex**: Job tracking and history
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!