We are developing a video creation app for Anna. We plan to provide a preset library that helps users choose camera movements, visual styles, compositions, effects, and audio treatments.
This library may contain hundreds of:
- Preset thumbnails
- 3–5 second preview videos
- Audio samples
- Reference images
- Related prompt templates and model parameters
Preset JSON, prompt templates, and a small number of icons can live in the App bundle. However, a large media library should not be:
- Bundled into every Executa binary
- Duplicated into each user’s APS storage
- Tied to short-lived upload or generation URLs
- Republished with the entire App whenever one asset changes
APS is a good fit for user-uploaded assets and generated videos, but not for a developer-owned preset library shared by every user.
We would therefore like Anna to provide CDN-backed, App-level shared asset hosting, for example:
developer.assets.upload
developer.assets.list
developer.assets.delete
developer.assets.getUrl
Ideally, it would support:
- Assets associated with an App and version
- Shared access for all users without per-user duplication
- Stable or content-hashed URLs
- Images, audio, MP4, and WebM
- HTTP Range Requests for video streaming
- CDN edge caching
- Automatic CSP and CORS configuration for App iframes
- Asset metadata and manifests
- Updating the asset library independently from the Executa binary
- Reasonable storage and bandwidth quotas
Our intended architecture is:
App bundle
└── presets.json
├── preset name
├── prompt template
├── model parameters
├── thumbnail_url
└── preview_video_url
Anna App Assets CDN
├── thumbnails/*.webp
├── previews/*.webm
├── previews/*.mp4
├── audio/*.mp3
└── references/*.jpg
APS
├── user-uploaded assets
└── user-generated videos
Executa
└── video processing and provider integration code
Could the Anna team clarify:
- Is the current App bundle hosting intended for storing and lazily loading hundreds of video preset assets?
- If not, is developer-owned, App-level public asset hosting or a CDN Asset API planned?
- Until such a feature is available, does Anna officially recommend using an external R2/S3/CDN configured through
external_originsandcsp_overrides?