Live data from Hacker News

Strada – Create fully native controls, driven by your web app

strada.hotwired.dev

11–20 of 34 posts

Re: Strada – Create fully native controls, driven by your web app

#11

Is there a cause for concern that a strada app might conflict with the App Store review guidelines?

Strada is just a standardized communication layer between native code and your Turbo web app. Turbo native is the native wrapper for the web app and that has been available for years and is used by a bunch of apps.

Re: Strada – Create fully native controls, driven by your web app

#12
post #5

It's honestly just sad how complicated the engineering is to make a modern CRUD app that works on the various platforms users expect and behaves normally. It doesn't seem tenable long-term to have to build your app three or four times, or use weird glue projects like this. This seems like a decent solution, to be sure, but still.

Right now I'm building a web app, but I'm at the point where when it comes to phones, it's either fully native apps - or nothing. I take some relief knowing that only the "R" and a subset of "U" really needs to be in the app to satisfy almost everyone but staff in my case.

A nice benefit to the Turbo/Strada approach is that you can progressively enhance the apps over time. So you can start off with full functionality facilitated by the web app and overtime if it makes sense for the app you implement particular screens fully natively.

Re: Strada – Create fully native controls, driven by your web app

#13
post #5

It's honestly just sad how complicated the engineering is to make a modern CRUD app that works on the various platforms users expect and behaves normally. It doesn't seem tenable long-term to have to build your app three or four times, or use weird glue projects like this. This seems like a decent solution, to be sure, but still.

Right now I'm building a web app, but I'm at the point where when it comes to phones, it's either fully native apps - or nothing. I take some relief knowing that only the "R" and a subset of "U" really needs to be in the app to satisfy almost everyone but staff in my case.

We migrated all our native apps to webapps. No fancy 3d apps. But mostly news apps. Lists, detail screens. Our approach shows no decrease in performance. But development becomes 10 times easier. Its a pita to work with iOS, but specially Android SDK is such a crap framework. You still need a bit of native code. But at least all the UI related stuff can be created with css.

Re: Strada – Create fully native controls, driven by your web app

#14
post #8

Something like Strada is the final piece for me to give Rails a real shot. I've been running with Django + htmx recently. I'm having to do backend-for-frontend and write redundant JSON APIs for mobile. And of course I lose the SSR in those cases.

Did you try Hyperview ( https://hyperview.org/ )? It´s discussed in the Hypermedia book like the htmx for mobile.

I use Django (python) and htmx to get away from React/JS/npm (or deno, or bun). Not trying to dunk on JavaScript/React devs, but the language and its ecosystem suck the joy out of me.

Re: Strada – Create fully native controls, driven by your web app

#16
post #8

Earlier quoted context omitted.

Did you try Hyperview ( https://hyperview.org/ )? It´s discussed in the Hypermedia book like the htmx for mobile.

I use Django (python) and htmx to get away from React/JS/npm (or deno, or bun). Not trying to dunk on JavaScript/React devs, but the language and its ecosystem suck the joy out of me.

The experience using Django & htmx is very similar to using Django & Hyperview. In both cases, you are primarily working with Django views and templates to build your app. You don’t need to touch JS using either library unless you want custom client-side interactions.

Re: Strada – Create fully native controls, driven by your web app

#17

Earlier quoted context omitted.

Right now I'm building a web app, but I'm at the point where when it comes to phones, it's either fully native apps - or nothing. I take some relief knowing that only the "R" and a subset of "U" really needs to be in the app to satisfy almost everyone but staff in my case.

We migrated all our native apps to webapps. No fancy 3d apps. But mostly news apps. Lists, detail screens. Our approach shows no decrease in performance. But development becomes 10 times easier. Its a pita to work with iOS, but specially Android SDK is such a crap framework. You still need a bit of native code. But at least all the UI related stuff can be created with css.

I developed and maintain two apps, both in native versions. We do quite a bit of custom graphics, prefer animation, lots of BLE (we push it in interesting ways, both characteristic counts and throughput) as well as have a mapping component that includes custom overlays which are user editable through direct drawing/dragging on top of the map. Oh, and some on device persistence, basic http fetching, and mqtt as well.

I agree with the sentiment that Android is just such a years long train wreck. I am currently rewriting one of the Android apps in 100% (as much as possible) "modern" and @Compose Android. So far... it seems better. But maybe the newness will eventually wear off. Some will the credit the "paradigm", but UIKit demonstrated to me that you could be a solidish "OO" ADK. I attribute @Compose to just being better engineered as a quasi functional approach than Android original stuff ever was as a Java implementation.

I am so worn out with the overall approach though. It is a ton of duplicate work. But I despair that the alternative would be no better? It seems that while today, I duplicate a lot of work, I get to choose how complex and coupled the various layers are. I do my best to just use stock stuff and not mash a bunch of stuff in. With a "web tech" solution, it seems the duplicity just rotates, so that the duplicity is just replaced by the complexity of trying to coordinate lots of disparate technologies, having to grow versed in even more domains, so that intelligent assesments can be made when things don't work as expected, and in which bucket/layer to focus ones efforts for each feature.

All that said, would you still encourage me to do as as you've done? I am honestly open.

Re: Strada – Create fully native controls, driven by your web app

#18
If your like this approach to building hybrid native mobile apps, I highly recommend following Joe Masilotti at https://masilotti.com/

I only read three emails newsletters, and Joe’s is one of them because it’s roughly once per month and it keeps me current on all the things happening with Hotwire and Turbo Native apps.

Re: Strada – Create fully native controls, driven by your web app

#19
Ah, this is part of the Turbo project that had the whole controversy earlier this month around DHH unilaterally removing TypeScript, citing only his own experience, despite overwhelming community disapproval: https://github.com/hotwired/turbo/pull/971

It's a really cool pattern to have server-side rendering drive a specification that's used by web and native components alike. Airbnb uses this pattern to great effect: https://medium.com/airbnb-engineering/a-deep-dive-into-airbn... - and ironically, they speak to the importance of strong typing of the data model as a way to control complexity.

I really hoped that Turbo would be a way to make this pattern more mainstream. But, much like Unity, 37signals seems intent on taking actions that hurt its developer community, and it's hard to justify moving towards a solution with such antagonistic governance.

Re: Strada – Create fully native controls, driven by your web app

#20
post #19

Ah, this is part of the Turbo project that had the whole controversy earlier this month around DHH unilaterally removing TypeScript, citing only his own experience, despite overwhelming community disapproval: https://github.com/hotwired/turbo/pull/971 It's a really cool pattern to have server-side rendering drive a specification that's used by web and native components alike. Airbnb uses this pattern to great effect:…

[flagged]
Post reply on HN