Introduction
Learn how to build native mobile apps with web technologies using the starti.app SDK
starti.app SDK
The starti.app SDK lets you build native mobile app experiences using standard web technologies. Your web app runs inside the starti.app container and gets access to native device features through a simple JavaScript API.
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
- Track events for analytics and user behavior
- 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.
<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
var platform = startiapp.App.platform; // "ios" or "android"
console.log("Platform:", platform);
}
});
</script>
</body>
</html>