Phones, Macs and other apps¶
Every app, in the browser¶
Every web app has a phone layout and installs like an app: in Safari on the iPhone, Share › Add to Home Screen; in
Chrome on Android, the menu › Install app. Light, dark or the device's theme, kept with your account. Installing needs
HTTPS (or localhost).
Native apps¶
| App | Device | What it does | Source |
|---|---|---|---|
| ionotes | Mac, iPhone, iPad | the clipboard Inbox and screenshots on the Mac, notes everywhere, synced with the ioNotes server and usable offline | ionotes-apps |
| ioHealthSync | iPhone | copies Apple Health data to the ioHealth server: everything or the types you pick, incremental, in the background | iohealth-apps |
Both are built from source with Xcode and XcodeGen (brew install xcodegen, then xcodegen generate); each
repository's README has the steps. They sign in with your suite account. Behind Cloudflare Access, ionotes takes a
Cloudflare Access service token; ioHealthSync's uploads (/v1/) need a bypass rule or a service token (see
Cloudflare).
Calendars and contacts on every device¶
ioCalendar and ioContacts speak the standards phones and desktop apps already use. Settings › Apps and devices in each app shows the exact addresses to type.
| On | ioCalendar | ioContacts |
|---|---|---|
| iPhone, iPad, Mac | CalDAV, or the configuration profile from Settings › Apps and devices (one tap, with a device-only app password inside) | CardDAV, or its configuration profile |
| Android | CalDAV with DAVx⁵ | CardDAV with DAVx⁵ |
| Thunderbird, Evolution, GNOME, KDE | CalDAV | CardDAV, LDAP |
| Google Calendar, Outlook | a private webcal:// subscription link (read-only) |
vCard export |
| Mail apps, desk phones, printers | the LDAP directory (read-only) |
Sign these in with your user name and an app password (Settings › Account › App passwords), one per device, so losing a phone means revoking one password. An app password can be limited to the sync protocols only; the ones in the Apple profiles always are. Away from home, phones need HTTPS: see Reverse proxy and HTTPS.