Developers

Building an UplinkOS app

Any web page works as an UplinkOS app: plain HTML, CSS and JavaScript, or a framework that builds to static files.

#The basics

  • Put index.html at the top of the project. It is the page your app opens on.
  • Use relative links like style.css or js/app.js, so they work in Studio and on your host.
  • Design for a phone screen of about 390 × 760 points, keep it fast, and make it look fine in dark and light.
  • To use your own data, call your own server from the app. Keep your API key on that server, never in the page.

#How apps run on the phone

  • Your app is a web page on your own https address. UplinkOS opens it full screen in a sandboxed frame under a bar with its name.
  • The frame can run scripts and forms and open links in a new tab. It can not read Uplink's cookies, pages or the player's Uplink data.
  • Browser storage is blocked inside the frame: localStorage, sessionStorage, IndexedDB and cookies do not work. Keep data in memory while the app is open, or save it on your own server.
  • Only the address from your approved version is allowed to open, so ship changes by sending a new version.

Add this file at the top of the project to set the name and icon on the test phone and the page it opens on.

uplink.json
{
  "name": "Tow Board",
  "entry": "index.html",
  "icon": "icon.png"
}
FieldWhat it does
nameShown under the icon on the test phone. The project name is used when it is missing.
entryThe page to open. index.html when it is missing.
iconA square picture in the project, like icon.png. A letter tile is used when it is missing.

#Next

See a whole working app in Example app: Tow Board, then read Submitting an app.