@tomerweller Finally!
Last year I was super busy during the workshop (noir conf 3) but when I went to do my homework, nothing worked because of the limit.
This year will be amazing.
🚀 68 Days of Building Roamie - #buildinpublic
68 days ago, I typed "flutter vs reactive native vs native to create roamie".
Today, I have a full remote development platform: mobile app on TestFlight + Play Store beta, Go backend, CLI client, landing page.
All built solo with Claude Code as my AI pair programmer.
Here's everything I shipped:
---
📱 FLUTTER MOBILE APP (iOS + Android)
Terminal & SSH:
• Full SSH terminal with xterm.dart
• Persistent sessions (Termius-style - reconnect after app restart)
• Pinch-to-zoom terminal
• Custom keyboard toolbar with swipeable shortcut bars
• Snippets with auto-enter (types command + presses Enter)
• Per-bar leader keys (^B for tmux, custom for vim, etc.)
• Drag & drop shortcut reordering with animations
• Glass Terminal mode (video/image backgrounds + frosted blur + animated glow border)
Security & Auth:
• AES-256 encryption for SSH keys (user password)
• Firebase Auth with Google Sign-In
• QR code device authorization (scan to approve new devices)
• Secure Firestore sync for hosts & keys
VPN Integration:
• Native WireGuard implementation
• Auto-connect on app launch
• Network Extension for iOS
• Automatic device registration
Cloud Sync:
• Hosts sync across all devices
• SSH keys encrypted in cloud
• Keyboard shortcuts sync
• Wipe all data option for recovery
UX Polish:
• Multi-select hosts with bulk delete
• Bounce/shrink animations for shortcuts
• Live Crashlytics logs viewer
• Auto-detect version from git tags
---
🖥️ GO BACKEND SERVER
Core:
• WireGuard VPN management
• PostgreSQL database
• Chi HTTP router
• Multi-tenant with user isolation
Auth:
• Email codes (6-digit via Resend)
• QR code device authorization
• Firebase Auth integration
• JWT + refresh tokens (30 day / 1 year)
Networking:
• /29 subnet per user (6 devices)
• Automatic network conflict detection
• Docker network scanner
• IPTables firewall rules per user
SSH Tunnels:
• Reverse tunnel server (port 2222)
• Access devices behind NAT without VPN
• Dynamic port allocation (10000-20000)
• Device heartbeat system (online/offline status)
---
🔧 GO CLI CLIENT (roamie)
• QR code login (scan with phone to auth)
• WireGuard tunnel management
• SSH reverse tunnel daemon
• Auto-upgrade system (checks every 24h)
• TUI setup wizard (Bubble Tea)
• Cross-platform: Linux, macOS, Windows
• One-liner install: curl -fsSL https://t.co/UBqeC1ZH4I | bash
• roamie doctor - diagnostic tool
• systemd user service integration
---
🌐 LANDING PAGE (Next.js)
• Next.js 14 + Tailwind CSS
• i18n (Portuguese + English)
• Auto-deploy to Vercel on push
• Framer Motion animations
• Discord community link
---
⚙️ DEVOPS & INFRA
• Codemagic CI/CD → TestFlight (iOS)
• Firebase App Distribution (Android)
• GitHub Actions for CLI releases
• Docker Compose for dev/prod
• Coolify deployment
• Auto-versioning from git tags
---
📊 PERFORMANCE METRICS
Real benchmarks from production server (178.156.133.88):
| Metric | Value |
|--------|-------|
| Connection time | ~2.5s |
| In-session latency | 0-1ms |
| Network RTT | ~125ms |
| SSH channel latency | 1ms |
| Throughput | 403 KB/s |
---
📈 BY THE NUMBERS
• ~150 commits across repos
• 2 mobile platforms (iOS + Android)
• 3 desktop platforms (Linux, macOS, Windows)
• 1 Go server + 1 Go CLI + 1 Flutter app + 1 Next.js landing
• 0 to TestFlight in 68 days
• 1 developer + Claude Code
---
The craziest part? I built most of this from my phone, testing SSH connections while walking around.
That's the whole point of Roamie: Break Free. Code Anywhere.
🔗 https://t.co/nbhXIUx7Rn
🔗 https://t.co/8t6nfDJVw8 (CLI + Server - open source)
#buildinpublic #indiedev #flutter #golang #mobile #ssh #vpn #solopreneur #ai #claudecode
we are not editors or designers (me or my wife) but you keep pushing to get better or doing this stuffs.
We used a bunch stuffs:
- Claude Code Pro max
- CapCut Pro
- Nano Banana Pro
- OpenScreen (ScreenStudio alternative)
- Veo3 (for last logo animation)
- Looka for the Logo.
PS: OpenScreen didn't Linux version, so also did a PR to contribute there.
We're doing an Engineering Residency at Lambda in Buenos Aires for people who want to work on system programming, distributed systems, cryptography, high performance and low level infrastructure.
It's gonna last 6 months, full time, on site. You will be working on real production systems and applied research.
Before joining, candidates must complete our Hacking Learning Path autonomously.
If you're interested fill the form. Please RT and like for students and young people to find out about the opportunity.