Background
We are developing a ppt-app based on Anna App. The app’s home page includes a template selection feature that allows users to choose from multiple visual style presets. Each template contains several preview images. In the current implementation, these images are included as frontend static assets and packaged together with the frontend application in the bundle.
We chose this approach for several practical reasons:
- Images are published together with the app, simplifying deployment and version management.
- Template preview images do not depend on an additional runtime service or cross-origin requests.
- The frontend can load the static assets directly, without routing requests through an additional application API when users open the home page.
- Template previews are read-heavy and rarely modified. Keeping them fixed within the build artifacts makes their behavior more predictable.
As the number of templates and preview images per template increases, the frontend bundle also becomes larger. Template preview images now account for a substantial portion of the build output.
Issue
When publishing the app with anna-app apps publish, the platform returns the following 422 validation error:
✗ request failed (422): {"detail":[{"type":"less_than_equal","loc":["body","total_size_bytes"],"msg":"Input should be less than or equal to 52428800","input":276465952,"ctx":{"le":52428800}}]}
Based on this error, the total_size_bytes limit for a publish request appears to be 52,428,800 bytes (50 MiB). The current total app size is 276,465,952 bytes, so the app cannot be uploaded.
Impact
This limit prevents apps containing a large number of image assets from being published. For apps centered around template catalogs, asset libraries, or example galleries, it is common for static resources to reach tens or even hundreds of MiB.
Moving all images out of the frontend bundle would require additional infrastructure and logic for image hosting, runtime downloads, caching, version synchronization, and asset availability. This would significantly increase architectural and operational complexity and could also affect the loading speed and reliability of template previews on the home page.
Request and Suggestions
Would the Anna platform consider increasing or removing the size limit for an app’s frontend bundle—or, more precisely, the publish request’s total_size_bytes limit?
We would appreciate support through at least one of the following options:
- Increase the default publishing limit to support apps containing a larger number of static image assets.
- Provide a higher quota for reviewed apps or apps that explicitly declare the purpose of their bundled resources.
- Provide an Anna-managed static asset or CDN solution, allowing apps to use large image assets without requiring a separately hosted service while retaining versioning and caching capabilities.
If the current limit must remain in place for performance, storage cost, or security reasons, we would appreciate an officially recommended approach for splitting and hosting these resources. Ideally, the guidance would also clarify caching behavior, release versioning, offline or poor-network behavior, and any applicable asset size limits.
Additional Information
- App type: Anna App
- Publishing command:
anna-app apps publish - Primary large assets: Template preview images
- Current publishing package size:
276,465,952bytes - Platform limit shown in the error:
52,428,800bytes
Thank you for helping us understand the rationale behind this limit and the recommended implementation approach for apps with a large volume of static assets.