Introduction
Learn how to build native mobile apps with web technologies using the starti.app SDK
starti.app SDK
starti.app lets you ship a native iOS and Android app that wraps your existing web application. Your web code runs inside a native container, and the SDK gives your JavaScript access to native device features — push notifications, biometrics, storage, authentication, and more.
You write normal web code. When you need a native capability, you call an SDK method, and the native layer handles the rest.
What you can do
- Authenticate users with Google, Apple, Microsoft, and MitID
- Send push notifications with topic-based subscriptions
- Access device hardware — camera, NFC, biometrics, GPS, accelerometer
- Scan QR codes and barcodes with the built-in scanner
- Store data persistently on the device
- Handle in-app purchases on iOS and Android
- Share files and text through the native share sheet
- Control the app UI — status bar, spinner, navigation, screen rotation
Add the SDK to your page
Load the SDK by adding these two tags to your HTML <head>. Replace {BRAND_NAME} with your brand name from the starti.app manager or find the exact lines here.
<script src="https://cdn.starti.app/c/{BRAND_NAME}/main.js"></script>
<link rel="stylesheet" href="https://cdn.starti.app/c/{BRAND_NAME}/main.css" />The script creates a global startiapp object on window - no import or npm install needed.
Quick start
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta
name="viewport"
content="width=device-width, initial-scale=1.0"
/>
<title>My starti.app</title>
<!-- Load the starti.app SDK -->
<script src="https://cdn.starti.app/c/{BRAND_NAME}/main.js"></script>
<link rel="stylesheet" href="https://cdn.starti.app/c/{BRAND_NAME}/main.css" />
</head>
<body>
<p class="startiapp-show-in-app">You are using the native app!</p>
<p class="startiapp-show-in-browser">
Download our app for the best experience.
</p>
<script>
startiapp.addEventListener("ready", async function () {
startiapp.initialize();
// Check if running inside the app
if (startiapp.isRunningInApp()) {
console.log("Running in starti.app!");
// Get the device platform
const platform = startiapp.App.platform; // "ios" or "android"
console.log("Platform:", platform);
}
});
</script>
</body>
</html>