Media platform: upload, transcode, AI
A polished asset upload, playback, and AI-context experience for every generated app. Drop a screenshot, PDF, or video and the widgets handle the rest.
Drop anywhere, upload everywhere
The home generator and chat input accept paste-from-clipboard, drag-drop, and a full-page dropzone for images, PDFs, and videos. Inside generated apps, the GenMB SDK exposes a<genmb-uploader> Web Component plus a low-levelwindow.genmb.storage API. Files larger than 8MB upload via the GCS resumable protocol so they survive flaky networks.
<genmb-uploader accept="image/*" multiple folder="avatars"> instead of building your own file input. It handles drag-drop, progress, and per-file retry in one tag.Images: AVIF, WebP, blurhash, AI alt-text
Every image upload is processed in the background: AVIF + WebP + JPEG variants at 200 / 600 / 1200 / 2400 px widths, blurhash placeholder, dominant color, and AI-generated alt text. Use <genmb-image src="..." width="800"> and the right variant is served via <picture>. EXIF is stripped on save.
Video: HLS, thumbnails, captions, chapters
Upload an MP4/WebM/MOV and the media-worker transcodes to an HLS multi-bitrate ladder (480p / 720p / 1080p), extracts a thumbnail at 10% of the duration, generates a 3-second GIF preview, runs Whisper for captions, and segments the transcript into chapters.
Drop <genmb-video src="..." controls captions chapters> in your app and it plays the original immediately while the optimized renditions roll in.
Knowledge files: PDFs the AI references
Open the Knowledge tab in the app editor and upload PDF, DOCX, MD, or TXT files. The worker extracts text, chunks with overlap, embeds via OpenAI, and stores in a per-app pgvector table. From then on, both codegen and chat refinement retrieve the top relevant chunks and inject them into the system prompt - so refining your app “make the pricing page reflect our spec” actually pulls from your spec.
You can also drop a PDF on the home page to scaffold a brand-new app from a product spec or design brief. Loom and YouTube URLs work too - they extract title and description for the AI to reference.
Audio: waveforms and transcripts
Upload audio and you get a <genmb-audio waveform transcript> widget with a click-to-seek transcript and a waveform strip. Whisper handles English natively.
Governance: scanning, versioning, GDPR
Daily ClamAV scans quarantine infected uploads automatically. Every overwrite is kept as a version with one-click rollback in the assets panel. The Storage Analytics panel shows live quota usage and 30-day transcoding trends. GDPR delete and export hit POST /api/storage/{appId}/assets/export and DELETE /api/storage/{appId}/assets/all.