My “Move Fast” Stack for 2026
TL;DR: Moving fast in 2026 isn’t just about the code—it’s about picking the right tools and letting AI handle the grunt work. My current go-to: Golang or Elixir (depending on what I’m building), SQLite + Litestream, and a 3-agent pipeline for code quality.
In my last post, I reflected on the ups and downs of the past 14 months. One of the biggest takeaways? As an indie hacker, velocity is your only real edge.
You’re competing against teams with actual budgets, so you have to be able to ship, pivot, and maintain 3-4 apps at the same time without burning out.
Here’s the stack—both physical and digital—that lets me move at that pace in 2026.
The Stack
The goal here isn’t “the most scalable” or “the most trendy.” It’s what gets me from idea to landing page the fastest.
Server Stack: Elixir vs Golang
I use both Elixir and Golang, and the choice depends on what I’m building.
Golang is my AI-friendly workhorse: Go compiles to a single binary, which makes it perfect for anything that needs to run on iOS/Android, CLI tools, or simple servers. The static typing is a game-changer when working with AI agents. The compile → error → fix loop is incredibly tight. AI writes code, Go compiler catches type errors immediately, AI fixes them, repeat. No surprises at runtime. This makes it perfect for:
- Simple servers that need to be rock-solid
- Anything embedded in iOS/Android apps (single binary, easy to share across platforms)
- APIs and microservices where I need confidence that it won’t blow up in production
- Background workers and CLI tools
- NPM packages that thinly wrap around Golang binaries
Elixir for web apps: Phoenix + LiveView is still unbeatable when I need a full web app with real-time features. The entire frontend is built-in, so I skip the whole React/API dance. Just write server-side code and the UI updates automatically. Perfect for consumer-facing web apps.
The decision tree:
- Consumer-facing web app? → Elixir (fully-featured package, LiveView gets you there fast, easy to extend)
- Starting with a server/service, or planning to ship to desktop/mobile? → Golang (start with CLI, embed later)
- Simple API or background worker? → Golang (compile-time safety)
- Need real-time features or distributed systems magic? → Elixir (OTP + LiveView)
The power of OTP (when I use Elixir): When I do reach for Elixir and need to scale, OTP lets me do it within the same app. Need a queue and worker? Just spin up a GenServer process with Oban. Need a cache? That’s another GenServer. Need a cron or periodic task? Another lightweight process. I don’t need to reach for Redis or external infra for every little thing. (I wrote about this before if you want to see how powerful this is)
Databases
SQLite + Litestream: For quick projects, I start with SQLite and Litestream. It’s a database replication and backup layer that sits on top of SQLite and streams changes to S3. No need to manage a “real” database cluster for small-to-medium apps. Every new project starts with this stack to not have additional database cost.
PlanetScale: For anything that actually needs a hosted HA database, PlanetScale is the choice. It starts at $5, and after trying a few providers, this was easily the nicest to work with.
Web & Apps
Web: Elixir with AlpineJS (LiveView) for most things. But if I just need a simple JavaScript site without server-side logic, or something that purely consumes an API, I’ll use React + react-router over Next.js. Pure JS apps are always in React for me - no need for the Next.js overhead.
Apps: My current favorite pattern is Embedded Golang in Swift. I get to write the core logic in a language I love (Go) and wrap it in a native, buttery-smooth iOS UI. Best of both worlds. If I decide to build an Android app as well, I can use the same business logic in Golang and embed it into my Android app.
Auth: Firebase Auth. Don’t build your own auth. Just don’t. I’ve seen too many people waste weeks on this. Firebase has a great free tier and so far I’ve not once exceeded it. Supabase is a close second, but the cost per project was too much for me.
AI Workflow: The 3-Agent Pipeline
Here’s where things get interesting. I don’t just use AI for autocomplete - I use three agents in a pipeline to handle most of the grunt work.
My repos are built for AI agents. I maintain RULES, CONVENTIONS, and AGENTS.md / CLAUDE.md files that explain how the codebase works. But I don’t rely on the AI to follow rules perfectly. Just like I prefer compiled languages that catch errors at compile-time, I use pre-commit hooks as a static guarantee. The AI can write whatever it wants, but it won’t get committed unless it passes formatting, linting, tests, type checking, and build validation.
The pipeline:
- Writing phase: Jules/Copilot/Codex (cloud or self-hosted) write code based on my requirements
- Automatic validation: Pre-commit hooks run - if something fails, the agent fixes it automatically
- Review phase: Other agents (Gemini, Codex, Copilot) review the changes, check for edge cases
Cloud agents for clear tasks: Once I have a design doc ready, I pass it to a cloud agent (Codex, Copilot, Jules) that follows the plan while I work on something else.
Oracle server for exploratory work: I run agents on Oracle’s free tier for the messy, long-running tasks that aren’t clearly defined yet. It’s like having a second engineer working on stuff while I do something else. I can SSH in from anywhere - even my phone. I keep my dev server in sync with my macOS system through ConfigMesh which e2ee syncs dotfiles frictionless.
By the time code reaches me, I’m only focusing on the final 10% - architecture decisions, product direction, and tricky edge cases. The agents handle the boilerplate, testing, and reviews.
This is what lets me maintain 3-4 projects simultaneously while traveling.
Hosting: Built for Nomads
This is where I optimize for speed, cost, and the ability to deploy from anywhere in the world.
Phase 1 - Hetzner + Kubernetes: Most of my small experiments start here. I run a self-managed k8s cluster on Hetzner where I can quickly deploy stuff from wherever I am without incurring additional cost per project. It’s my “testing ground” - if something shows promise, I move it to proper hosting. If it fails, I just delete the namespace. No extra bills or cost. I love how nice k8s is once you learn the basics.
Phase 2 - Fly.io: Once a project graduates from experiments to “real thing,” it goes on Fly.io. I can quickly scale to the edge, and when I’m using PlanetScale, I can deploy close to the database region I’m in. Latency matters. The CLI is also dead simple to use from anywhere - even from my phone if I really need to.
Cloudflare Workers: All my React + react-router stuff lives here. Static sites, edge functions, anything that doesn’t need a backend. Fast, cheap, globally distributed. Perfect for when I’m traveling and need something to just work. Seriously, I love Cloudflare. Using it brings me joy, it’s that nice.
PlanetScale + Fly.io combo: When SQLite + Litestream isn’t enough and I need a real hosted database, I use PlanetScale. I can deploy Fly.io apps close to the PlanetScale region to keep latency low.
Logistics: The Foundation & Other Stuff I love
Coding is 50% environment. If the logistics aren’t sorted, the “vibe” is off, and the code doesn’t flow. Everything in my stack is built around supporting a nomadic lifestyle - I need to be able to work from anywhere.
WeWork: Even with all the corporate drama of years past, for a digital nomad it’s still the best “office-as-a-service.” Having a consistent, reliable place to work in almost any city keeps me grounded when I’m traveling. It’s my version of having “coworkers.”
Cloudflare Zero Trust: This is the glue that ties everything together. Most of my work - whether on iPad or macOS - happens while connected to Zero Trust tunnels. It connects my infra, my projects, my servers, everything. Some services even connect to other infrastructure through private tunnels. Security is usually a speed bump, but Zero Trust makes it invisible. I can access all my internal tools and dev environments securely from anywhere without messing with VPNs. (I wrote about this setup if you’re interested)
Noteplan: My brain is a mess of tasks and markdown files. Noteplan is where they live. It’s simple, markdown-based, and doesn’t get in the way. Everything from writing ideas to project plans to work journals goes in here.
My Remarkable tablet: As silly as that sounds, I haven’t found a better device that brings structure to everything I do. There’s something very Zen about sitting in a cafe with only a paper tablet and being forced to be semi-analog for once.
What’s next?
The stack will probably change by 2027, but for now, this is what’s working. It’s about minimizing friction, maximizing “vibe,” and being able to work from anywhere in the world.
If you’re building something, stop worrying about the “perfect” architecture and pick the tools that let you skip the boring stuff. For me, that’s Go when working with AI (tight feedback loops), Elixir when I need the magic (LiveView + OTP + easy scaling), a pipeline of AI agents to handle the grunt work and reviews, and infrastructure that I can access from my phone if needed.
The goal isn’t to write more code - it’s to write less code that matters more, while agents handle the rest.
What’s in your 2026 stack? Let me know on Twitter/X.
