You’ve spent months learning Swift or Kotlin. You’ve wrestled with Xcode or Android Studio. You’ve submitted to the review gods, waited days, and prayed for approval. And for what? A tiny slice of a duopoly that treats you like a tenant, not a builder.
I know the feeling. I built three mobile apps the “right” way—and each time, I felt less like a creator and more like a supplicant begging for crumbs from Apple and Google’s table. So I stopped playing their game.
The real moat of Apple and Google isn’t technology—it’s control. And the moment you realize that, you see the escape route.
I built a little Go application framework called Swag. It combines HTMX, DaisyUI/TailwindCSS, and service workers. The result? Offline-first PWAs that install to your home screen, feel native, and don’t require a single approval from the app store overlords.
Yeah, I know the reflex: “Web apps are janky. They can’t compete with native.” That’s what the duopoly wants you to think. They’ve spent billions convincing you that the only path to a good mobile experience runs through their gates. But here’s the thing: service workers make offline caching seamless. HTMX makes dynamic UI feel instantaneous. TailwindCSS makes it look polished. And Go makes the backend fast and deployable anywhere.
I’ve built three apps this way. They’re not toys. They work offline. They load faster than most native apps I’ve used. And I shipped them without a single review, without a 30% tax, without begging for forgiveness.
The most dangerous lie in mobile development is that native is the only way to be taken seriously. The truth is, for solo developers and small teams, web technologies can match native performance in most use cases—and surpass it in independence.
So here’s my challenge: before you spend another week wrestling with provisioning profiles or Gradle build errors, try Swag. Build something small. Put it on your home screen. See if it feels different. Because the future of mobile isn’t native—it’s web, if we choose to build it that way.
FAQ
Q: What about performance? Can a web app really compete with native?
A: For most solo-dev projects—data entry, dashboards, social feeds, note-taking—yes. Service workers handle offline caching, HTMX keeps UI snappy, and modern phones run web views faster than ever. Native still wins for heavy gaming or camera filters, but 80% of apps don't need that.
Q: Won't I miss out on app store discoverability?
A: True, you lose the app store as a search channel. But you gain independence from review delays, 30% commissions, and arbitrary rule changes. If you have your own audience or alternative distribution (QR codes, web search, social), the trade-off is often worth it.
Q: Is this just another PWA hype? What makes Swag different?
A: Swag isn't a PWA framework—it's a Go backend that generates HTMX-powered pages and bundles service workers automatically. You write pure Go and HTML, no JavaScript framework overhead. The key difference: offline-first by default, not as an afterthought. And Go's single binary deployment is a godsend for solo devs.