Release Highlights
- Self-hosted relays: Run your own iroh relay so transfers don't rely on public infrastructure. Includes a full deployment template in
deploy/relay/with Docker Compose for a VPS and configuration examples for production use. - Fly.io support: One-click deploy template for Fly.io, including a quick-start config (
fly.dev.toml) for testing without a custom domain, plus production setup with Let's Encrypt and your own hostname. - Relay settings UI: New Settings → Network panel to choose how AltSendme connects: automatic public relays, custom self-hosted URLs (with optional auth token), or disabled. Test connections, verify latency, and see live relay status in the footer.
- Disable relays: Turn off relay servers entirely when you only need same-network transfers (e.g. LAN). Direct connections only. No relay hop required when devices can reach each other.
- Android graduates from beta: Android is now part of the regular release cycle alongside desktop. APKs ship with each version (universal, arm64, and armv7).
Other improvements
- Private relay access control via shared auth token
- Relay fallback notifications when a custom relay is unreachable
- Broadcast mode toggle in sharing settings
- Android release build fixes (split-per-ABI APKs, universal APK preservation)
- UI polish: mobile safe-area insets, dropzone layout, transfer progress animation
- Bug fixes for minification-related serialization issues and system tray icon loading
What's Changed
- feat(relay): add relay status functionality and settings UI (a120cdf)
- feat(relay): implement custom relay server configuration and verification (51276c7)
- feat(relay): add configuration for private relay access and enhance observability features (48fbabf)
- feat(relay): enhance relay URL validation, display connection status (d4fffa0)
- feat(relay): add RelayChangeGuard component and enhance relay-related translations (16ba514)
- feat(broadcast): add toggle setting for broadcast mode in sharing UI (ca6d977)
- fix(relay): correct QUIC discovery port, pin image, templatize fly.dev (52a2ba5)
- fix: More broken serialization due to minification (67491a9)
- fix(android): preserve true universal APK across per-ABI builds (e9f256f)
- fix(ui): conditional safe-area insets padding on mobile (1182f0e)
- refactor(transfer): CircularRing component animation fix (944572b)
- chore(android): drop x86 and x86_64 release APKs, keep universal+arm64+armv7 (34ada0b)
Full Changelog: v0.4.0...v0.4.1
See the assets below to download and install this version.