RoyFoundry · Firebrat
Convert, read & listen
Choose the path that fits your device: import a finished book, convert on Android, or use your own server.
New: Get started guide: private offline conversion, free LLM keys (OpenRouter, Groq, Google AI Studio), character voices and Google Drive sync. The same guide is inside the app under Menu › App guide.
Use Android without an account
The library opens without login in Offline and On-device modes. If a sign-in screen appears, choose Continue as guest. Guests can read, import, convert locally after downloading models, and download books from a public server shelf. Server conversion uploads require sign-in. Signed-in users can sync metadata and reading position through Menu → Sync & backup. Book files use their own Google Drive or a shared server. Use Menu → Sign in when needed; guest mode does not disable the SDK analytics disclosed in the privacy policy.
Sync across Android devices
- Sign in with the same Google account on both devices.
- Menu → Sync & backup → Sync metadata, then Back up to my Drive for each selected book. Approve app-specific Drive access.
- On the second device, Sync metadata, then Restore from my Drive. Books without a backup must first be backed up on the original device.
- Open the same conversion to resume from its newest checkpoint. Cloud saves normally occur every two minutes and on pause/section changes with a 15-second minimum; local progress is saved approximately every five seconds. Sync metadata retries pending offline progress. Playback starts only when you press Play.
Guests keep progress locally. Sync can be disabled. Firebase stores only small records; book packages use your Drive quota. Free Spark quotas are shared across users; sync pauses at limits while local reading continues. Email-only accounts can sync metadata, but Drive needs matching Google sign-in. Local deletion does not remove cloud records or Drive backups.
1. Read a finished book offline
- Keep a backup of the Firebrat
.tar.gzor.zippackage. - In the Android library, choose Import and select the package. Wait for import to finish, then open its card.
- Press Play. Narration highlights text and displays linked visuals. Use Source PDF for the original page, Focus for a larger image, and section controls to navigate.
Choose Offline in Conversion settings if you only want to read imported books. No server/account is required for that path.
2. Convert on Android
- Open Conversion settings and select On-device. Choose Illustrated / technical or Novel / characters.
- While online, download the local language model. Qwen3 1.7B is the balanced default for 6–8 GB RAM phones; smaller models use less memory. Larger models are slower and require more memory.
- Choose a downloaded offline system voice or Kokoro. Kokoro downloads its voice/model data on first use. Novel mode offers male/female character voices and manual overrides.
- Leave “Allow cloud helper” off for fully local processing. GPU layers can accelerate supported devices; use 0 for CPU if the GPU path stalls or closes the app.
- Conversions → Convert a PDF or ZIP. Keep the foreground conversion notification active. Finished books appear in the library.
Android preserves original page images alongside narration. It does not yet crop individual figures precisely. Local models can paraphrase or omit details; check important text, figures, numbers and formulas against the original. Conversion time depends on device, model, temperature and book layout.
3. Convert on your computer/server
- Install a Firebrat backend from the release downloads. Linux Docker and desktop-server instructions are in the server guide.
- Keep the server running. Use Tailscale or a similar mesh VPN for a private connection; use an HTTPS Funnel only when you intend to expose the service publicly. Server shelves are readable by anyone with access to the address.
- In Android or PWA Settings, select Server, enter its URL and sign in for uploads. Select the book type, upload your PDF/ZIP and watch the job status.
- When conversion completes, download/save the book on your phone. Playback can then work offline.
A tested RTX 4080 16 GB server configuration uses Qwen3-4B-Instruct-2507 locally with Chatterbox voice generation. More capable models need additional memory for extraction and speech as well as the language model. If you have an LLM API, configure it on your server; Firebrat’s backend voice generation still runs locally. Protect API keys and keep them out of public bug reports.
Apple devices and the PWA
The web app converts on a server, then saves books for offline playback. It does not run Android’s local conversion engine. In Safari, use Share → Add to Home Screen. Browser storage may be evicted; keep the server/source backup.