Appearance
Mobile Builds
GemShell wraps your HTML5 game into a native iOS and Android app using Capacitor — the same technology behind apps like Burger King and Popeyes. Your game runs inside a native WebView with full device access.
How It Works
Your HTML5 Game
↓
GemShell packages it into a Capacitor project
↓
iOS: Xcode project → App Store
Android: Android Studio project → Google PlayGemShell handles the scaffolding. You sign and publish from the native IDEs.
Requirements
iOS
- macOS with Xcode 15+ (free from the Mac App Store)
- Apple Developer Account ($99/year) for App Store publishing
- Node.js 18+
No Mac? Use Ionic Appflow
Ionic Appflow lets you build iOS apps in the cloud — no macOS required. Connect your generated Capacitor project and trigger cloud builds from any OS.
Android
- macOS, Windows, or Linux
- Android Studio with Android SDK
ANDROID_HOMEenvironment variable set- Java 17+ (bundled with Android Studio)
- Node.js 18+
Target Platforms
In GemShell, go to Target Platforms and enable iOS and/or Android under the Mobile section.
Build
Click Build — GemShell will:
- Copy your game files into a
www/folder - Generate a
package.jsonwith Capacitor dependencies - Run
npm installto install Capacitor - Add the iOS/Android platform (
cap add ios/cap add android) - Sync your game files (
cap sync) - Patch orientation (landscape/portrait based on your window size)
- Generate app icons from your project icon
When the build finishes, click "Open in Xcode" or "Open in Android Studio" from the Deploy tab to complete signing and publishing.
Project Settings
These settings affect your mobile build:
| Setting | Effect |
|---|---|
| App Name | Display name on the home screen |
| Bundle ID | Reverse-domain ID (e.g. com.yourname.mygame) |
| Version | App version shown in the stores |
| Icon | App icon — auto-resized for all required sizes |
| Window Width/Height | Determines orientation (width > height = landscape) |
