Skip to main content

App Quickstart

Shuuka apps are uploaded as self-contained ZIP packages. They run without custom Laravel code, custom migrations, or app-specific backend routes.

You can build a Shuuka app with plain HTML/JavaScript or with a frontend framework such as React. Shuuka installs the exported bundle, not your source files.

Before Your First Upload

If you want to upload an app, first turn on Developer access in Settings > App preferences.

After that, open the new app upload page.

What You Actually Upload

You upload the built package, not the app source folder.

my-app.zip
├── manifest.json
├── index.html
├── icon.svg
├── thumbnail.jpg
├── header.jpg
├── settings.json
├── settings-global.json
├── inputs.json
└── assets/

Start With This Mental Model

PartWhat it does
manifest.jsonDeclares the app package and runtime metadata
index.html or other entry fileLoads the app UI
required imagesMake the app installable and marketable
schema filesLet Shuuka build App Global Settings and collected-data screens
groups and placeholdersDefine App Instance Settings for simple and smart apps
built assetsJavaScript, CSS, and images served by the platform

SDK Loading Rule

Shuuka handles SDK loading differently depending on the app style:

App styleSDK rule
simple or smart HTML entryShuuka injects and initializes the SDK automatically in the main rendered app page
React app sourceimport what you need from @shuuka/sdk/index.sdk.js in your source code before building

Advanced case:

  • if you create an extra child HTML page such as a modal frame, Shuuka also exposes {{shuuka_sdk_src}} as a template placeholder for loading the SDK script manually in that nested page

Build Flow

  1. Build the app locally.
  2. Export the production files.
  3. Add manifest.json and the required images.
  4. Add settings.json, settings-global.json, and inputs.json if the app needs App Global Settings or collected-data schemas.
  5. Add groups and placeholders if the app needs App Instance Settings.
  6. Complete the manifest, including privacy and third-party declarations if the app talks to external services.
  7. Use the SDK or shkApi instead of hardcoded API routes.
  8. ZIP the built bundle.
  9. Open the new app upload page, upload the ZIP, then test the installed package in Shuuka.

Read App configuration surfaces, React apps, App SDK UI Helpers, App package checklist, and App manifest before you upload your first version.