Real tools. Clear expectations.
Connect the moving part.
StoickAI’s upload studio works today. For owners ready to enable actual video generation, the server-side adapter is prepared for Runway room clips and Shotstack assembly.
Generation connection
Not connected · no video output is fabricated
We couldn’t check the server connection. The manual studio remains available. Try again after deploying the integration functions.
Already working
- Multi-photo upload to built-in file storage
- Property details and room order
- Vertical and horizontal video settings
- Handheld and luxury prompt directions
- Projects saved in the built-in key-value store
- Private contact email delivery
Requires a provider
- Automatic Airbnb / listing extraction is not implemented. No listing data is retrieved.
- Actual AI video generation requires a funded Runway API account.
- Combining room clips and music requires a funded Shotstack account.
- Generation is owner-only to protect paid provider credits.
From prepared to production
Use server Secrets, never a front-end key field.
Create and fund provider accounts
Obtain a Runway API key for image-to-video tasks and a Shotstack Edit API key for combining the generated room clips. Keep both credentials on the server.
Set the server configuration
Set RUNWAY_API_KEY, SHOTSTACK_API_KEY, APP_PUBLIC_URL and a random JOB_SIGNING_SECRET in server Secrets. APP_PUBLIC_URL must be the actual published app origin. Deploy the video and importProperty functions. The adapter uses Shotstack production, not sandbox.
Run a real, owner-authorized test
Upload one authorized room photo, select a format and generate from the owner session. Check the provider task status, resulting MP4, mobile playback and download. Then test several rooms and an optional licensed music track.
Review before opening paid generation to others
Add authenticated account storage, quotas, billing authorization and durable server-side job processing before allowing customers to spend credits. This version deliberately restricts paid generation to the app owner.
Treat listing import as a separate integration
Connect an extraction service only if you have permission to retrieve the listing and photos. Add server-side URL restrictions, structured field validation and failure handling. Airbnb extraction is not claimed to work in this prototype.
Public prototype, not private client storage
Projects are saved in the app’s built-in key-value store; photos and music are saved in public file storage. No relational database or sign-in is enabled. Only use media and details you have permission to share publicly. Never upload confidential documents or sensitive client information.