Release Checklist
Use this checklist before you upload an app or theme.
Package
- the ZIP contains built files, not only source files
manifest.jsonis present and validicon.svg,thumbnail.jpg, andheader.jpgare presentheader.jpgis exactly1000x263- the
entryfile exists
App-Specific
settings.jsonexists if the app needsApp Global Settingssettings-global.jsonexists if the app needs secureApp Global Settingsgroupsandplaceholdersexist if the app needsApp Instance Settingsinputs.jsonexists if the app collects submissions- every field key used in code matches the schema files
- custom admin tabs are declared in
admin_pagesonly when needed
Theme-Specific
theme.config.jsonexists and matches the shipped entry- theme values fall back safely when user overrides are missing
- app-card styles do not break installed apps
Privacy and Security
- all external domains are declared in the manifest privacy section
third_party_transfersincludes every external API or SDK origin the app contactsthird_party_embedsincludes every framed or embedded third-party originvisitor_consent_textis present when consent is requiredgdpr_lawful_basis,data_controller, anddata_processorare set for apps that process visitor data- no secret is stored in a public settings file
- no raw internal Shuuka API routes are hardcoded in the app
- loading, error, empty, and success states are implemented
Submission
Developer accessis turned on in Settings > App preferences- open the new app upload page for the final ZIP upload
- test the uploaded bundle as an installed app or theme
- verify the package on desktop and mobile
- verify translated labels if the package ships with multiple languages