real-estate-workflows

Real Estate Workflows

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "real-estate-workflows" with this command: npx skills add bobby44-max/boston-luxury-re-producer/bobby44-max-boston-luxury-re-producer-real-estate-workflows

Real Estate Workflows

Core Pipeline

URL → Video Workflow

[Listing URL Input] ↓ [Firecrawl Extraction] ↓ [Data Validation] ↓ [AI Script Generation] ↓ [TTS Voiceover (Optional)] ↓ [Remotion Render] ↓ [Upload to Storage] ↓ [Notify User]

Workflow API

Single Video Generation

POST /api/workflow/generate-video { listingUrl: "https://zillow.com/...", videoType: "property-showcase", options: { voiceover: true, music: "upbeat", branding: { agentName: "Jane Smith", logoUrl: "https://..." } } }

Batch Processing

POST /api/workflow/batch { urls: ["url1", "url2", "url3"], videoType: "social-short", options: { ... } }

Status Tracking

GET /api/workflow/status/:jobId

{ jobId: "job_abc123", status: "rendering", progress: 65, steps: [ { name: "scrape", status: "complete", duration: 2.3 }, { name: "script", status: "complete", duration: 4.1 }, { name: "voiceover", status: "complete", duration: 8.2 }, { name: "render", status: "in_progress", progress: 45 } ], estimatedCompletion: "2024-01-15T10:30:00Z" }

Detailed Rules

  • URL to Video: See rules/url-to-video.md

  • Batch Processing: See rules/batch-processing.md

  • Social Distribution: See rules/social-distribution.md

Database Schema

Video Jobs (Convex)

defineTable({ userId: v.string(), listingUrl: v.string(), videoType: v.string(), status: v.string(), // pending, scraping, generating, rendering, complete, failed progress: v.number(), propertyData: v.optional(v.any()), script: v.optional(v.string()), voiceoverUrl: v.optional(v.string()), videoUrl: v.optional(v.string()), thumbnailUrl: v.optional(v.string()), error: v.optional(v.string()), createdAt: v.number(), completedAt: v.optional(v.number()), })

Error Handling

Error Recovery

Scrape failed Retry with fallback parser

AI timeout Retry with shorter prompt

Render OOM Reduce resolution, retry

Storage failed Queue for later upload

Webhook Notifications

// Configure in user settings POST /webhooks/video-complete { event: "video.complete", jobId: "job_abc123", videoUrl: "https://storage.../video.mp4", propertyAddress: "123 Main St", timestamp: "2024-01-15T10:30:00Z" }

Integrations

  • Firecrawl: Property data extraction

  • Gemini AI: Script generation

  • OpenAI TTS: Voiceover synthesis

  • Remotion Lambda: Video rendering

  • Supabase Storage: Asset hosting

  • Convex: Real-time job tracking

  • Clerk: User authentication

  • Stripe: Usage billing

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

firecrawl-scraper

No summary provided by upstream source.

Repository SourceNeeds Review
General

remotion-best-practices

No summary provided by upstream source.

Repository SourceNeeds Review
General

gemini-masterpiece

No summary provided by upstream source.

Repository SourceNeeds Review
General

apex-video-generator

No summary provided by upstream source.

Repository SourceNeeds Review