Desktop & mobile
PlanningSup can be installed as a native application on desktop and mobile platforms using Tauri, a Rust-based framework for building cross-platform apps with web technologies.Supported platforms
WindowsWindows 10+ (64-bit)
macOSmacOS 10.15+ (Intel and Apple Silicon)
LinuxUbuntu 20.04+, Fedora 36+, and other modern distros
AndroidAndroid 7.0+ (API level 24+)
iOS support is experimental and requires building from source. Use the web app or PWA instead for the best iOS experience.
Installation
Native builds are not yet available for public download. To run the desktop or mobile app, you must build from source.Prerequisites
Install Rust
Follow the instructions at rustup.rs
Install Bun
Download from bun.sh
Install system dependencies
Linux:macOS: Xcode Command Line Tools (pre-installed on most systems)Windows: Microsoft Visual Studio C++ Build Tools
Build for desktop
apps/app/src-tauri/target/release/bundle/:
- Windows:
.msiinstaller - macOS:
.dmgdisk image - Linux:
.debor.AppImage
Build for Android
Install Android Studio
Download from developer.android.com
apps/app/src-tauri/gen/android/app/build/outputs/apk/.
Features
The native apps have feature parity with the web app, plus:Faster startupNative binary loads instantly without browser overhead
System notifications(Planned) Get notified before classes start
Offline-firstEmbedded database for faster data access
Native window controlsMinimize, maximize, and close like any desktop app
Architecture
The Tauri app embeds the Vue web app inside a WebView (system browser engine):- Windows: Edge WebView2
- macOS: WKWebView
- Linux: WebKitGTK
- Android: Android System WebView
- Window management
- File system access (for backups, exports, etc.)
- Deep link handling (for OAuth redirects)
OAuth in native apps
Native apps use deep links to handle OAuth redirects:apps/web/src/composables/useAuth.ts:25-76 for the full implementation.
Configuration
The Tauri app is configured inapps/app/src-tauri/tauri.conf.json:
Build options
Customize the build via environment variables:Limitations
Development
To run the Tauri app in development mode:Debugging
Open the WebView DevTools:- Windows / Linux: Right-click → Inspect
- macOS: Right-click → Inspect Element
bun run dev.
Packaging for distribution
Code signing
For production releases, sign the binaries:- macOS: Use
codesignwith an Apple Developer certificate - Windows: Use
signtoolwith a code signing certificate - Linux: No signing required (though AppImages can be signed)
Distributing the app
Options for distributing native builds:- GitHub Releases: Upload
.msi,.dmg,.deb, etc. as release assets - App stores: Publish to Microsoft Store, Mac App Store, or Google Play
- Self-hosted: Host the binaries on your own server with download links
PlanningSup is not yet published to app stores. Check the GitHub repository for updates.
Comparison: PWA vs. native app
| Feature | PWA | Tauri Native |
|---|---|---|
| Install size | Less than 1 MB | 10-20 MB |
| Offline support | ✅ (Service Worker) | ✅ (Embedded DB) |
| Auto-updates | ✅ | ❌ (manual) |
| System notifications | ⚠️ (browser-dependent) | ✅ (planned) |
| OAuth / Passkeys | ✅ | OAuth only |
| Performance | Good | Slightly better |
| Cross-platform | ✅ | ✅ |
Next steps
Web app
Learn about the full-featured web version
Browser extension
Install the Chrome extension for quick access