Build and Release
Ruflet builds the managed Flutter client for Android, iOS, web, macOS, Windows, and Linux.
Build targets
ruflet build apk
ruflet build aab
ruflet build ios
ruflet build web
ruflet build macos
ruflet build windows
ruflet build linux
android is an alias for an Android APK build.
Server-driven builds
Server-driven is the default build mode. The installed client connects to a deployed Ruby or Rails server, so configure a reachable HTTPS URL:
app:
backend_url: https://app.example.com
Do not use localhost in a build intended for another device.
Self-contained builds
Use --self to package the Ruby project with the client:
ruflet build android --self
ruflet build ios --self
Choose this mode when the app should run without a remote Ruflet server.
Extensions and permissions
Optional client packages belong in ruflet.yaml:
extensions:
- charts
- map
- webview
Protected device access belongs in services.yaml:
services:
- camera:
description: Allows users to capture photos.
Rebuild after changing either file.
Assets
assets:
dir: assets
splash_screen: assets/splash.png
icon_launcher: assets/icon.png
build:
splash_color: "#FFFFFF"
splash_dark_color: "#0B0B0B"
icon_background: "#FFFFFF"
theme_color: "#FFFFFF"
Install a build
ruflet install
ruflet install --device DEVICE_ID
Run the intended platform build early. Native signing, permissions, and store requirements are platform-specific and should not be left until release day.