Ludovic Frank

August 23, 2025

Actually, their app is hybrid… 😮

I love 37signals, I’ve been talking about them for years! To me, they’re a model company…
In 2021, with just 34 employees, they generated $35 million in revenue (I don’t have reliable data on net profit).

Also:
37signals uses a super lightweight structure, favoring two-person teams (one programmer and one designer) for each project cycle.

That’s less the case today since the company has grown, but back in the day, they achieved a lot with very limited resources. And that’s exactly why—compared to the Googles, Facebooks, and other Big Tech giants—they grab my attention way more.

And I’ve always wondered:
“How the hell do they do it?”

When you use React and all that stuff, you need full dev teams just to maintain that mess.
They, with just a handful of people, manage to deliver a really nice user experience!

And that’s when I discovered things like Hotwire.
Being a fan of the company, of course I use their products (it helps me understand how they do things).

When Hey Mail launched, the CTO, DHH, said the app was native on Android and iOS…
(This was during a dispute with Apple’s App Store, which had blocked them. For a product like that, not being on the App Store is basically a death sentence.)

(Originally in this article, I was talking about pinch-to-zoom, but pinch-to-zoom can also work on native interfaces.)

The app is hybrid.
They didn’t rewrite major parts of the app in SwiftUI; they load web content (and send cookies to the server).

I knew Hotwire Native existed, but the issue is, you have to be on Turbo/Stimulus on the monolith side for it to work…

But if you use a WKWebView (the WebView on iOS) and load server content in it for certain interfaces, it can work just fine 😮
and drastically reduce development time: just use react-native-webview, and boom!

On this Saturday morning, they’ve just pointed me to a potential solution for a problem that’s been on my mind for three days.

Their weakness?
They’re too damn good. 🤣

About Ludovic Frank

Passionate web developer living in France, creator of projects like ViteUneTable, ViteUneCoupe, LFNY, LFQR, LFMDP, LFUnminfy, LFColors, LFSocial, LFMaps, LFFavicon, LFGitignore, LFMarkdown, LFAllergènes and LFMenu.

I build Omaport, Omatable and Omapixel for myself.

In addition to occasionally writing on this platform, I also maintain my own blog.

A tiny list of the best restaurants in the world ❤️