jac-mobile-app

Builds Jac client apps as native Android and iOS packages via Capacitor.

Updated Jul 26, 2026
One-click install
npx skills add https://github.com/PMN123/trapdoor --skill jac-mobile-app-pmn123
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: jac-mobile-app
Source: https://github.com/PMN123/trapdoor/tree/main/.agents/skills/jac-mobile-app
Command: npx skills add https://github.com/PMN123/trapdoor --skill jac-mobile-app-pmn123

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Shipping a Jac web client to phones and tablets normally requires manually wiring Capacitor, configuring native toolchains, and managing signing and port forwarding. This Skill codifies the entire mobile target workflow so a Jac client becomes an installable Android APK/AAB or iOS app with a few commands. ## Core Features & Use Cases - One-time scaffolding: jac setup mobile installs Capacitor dependencies, creates capacitor.config.json, scaffolds android/ and ios/ projects, and writes [client.mobile] config into jac.toml. - Dev loop with live reload: jac start main.jac --client mobile --dev runs cap sync + cap run with automatic host selection and automatic adb reverse port forwarding on Android. - Production builds: jac build --client mobile produces debug/release APKs, AAB bundles, or iOS builds via xcodebuild, with signing and provisioning guidance. - Use Case: You have a Jac app with routing and auth working in the browser. Run the scaffold, set app_id in [client.mobile], start the dev loop on an emulator, then produce a signed release APK for distribution. ## Quick Start Ask the assistant to scaffold the mobile target with jac setup mobile for Android and start the dev loop with live reload on a connected emulator.

Frequently Asked Questions about jac-mobile-app

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a Jac app as a native Android or iOS app?

Run jac setup mobile --platform android or ios once to scaffold Capacitor projects, then use jac build --client mobile to produce an APK, AAB, or iOS build. Configuration lives in the [client.mobile] section of jac.toml.

How do I enable live reload when developing a Capacitor mobile app?

Run jac start main.jac --client mobile --dev, which executes cap sync and cap run with live reload. On Android, jac-client automatically attempts adb reverse for the Vite and API ports before launching.

Does the Jac mobile app include a backend server?

No, the mobile app is frontend only. The native shell is a webview running your client bundle, and every walker or def:pub call goes over HTTP to a Jac server you deploy separately.

Why does my Capacitor app show a blank screen on Android?

Check the printed host and port, confirm adb devices shows the target as authorized, and fall back to manual port forwarding with adb reverse tcp:5173 tcp:5173 and tcp:8000 tcp:8000 if automatic setup failed.

How do I add Capacitor plugins like camera or geolocation?

Install the plugin with jac install --npm @capacitor/camera, then run npx cap sync to re-sync the native projects. You must re-sync after any plugin change for it to take effect.

What do I need to build a signed iOS release?

iOS builds require macOS with Xcode, Command Line Tools, and CocoaPods. Device builds and App Store archives need Xcode provisioning profiles, configured via npx cap open ios.