Live data from Hacker News

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

strada.hotwired.dev

21–30 of 34 posts

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

#21
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:…

I don’t think you can compare this to the Unity situation.

Turbo is free and open-source. Nothing stops people from forking and keeping TypeScript alive in the fork.

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

#22

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.

Oh hey, that's me! Thanks for the shout out, Brad.

I'm writing up my thoughts on the Strada launch right now. It will hit my newsletter, blog, and RSS feed tomorrow morning.

tl;dr - Strada alone doesn’t unlock new features for Turbo Native apps. Everything you can do with the framework you could already do before. Albeit with much, much more code. Strada provides structure and organization to the tangled mess that is the JavaScript bridge.

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

#23
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.

I built a thing that makes it much simpler to make apps: https://www.applin.dev

You make a web server that returns JSON defining your UI. Then you make a native iOS app by copy/pasting the provided Main.swift file and adding the URL of your server. The app uses an iOS client library, fetches the JSON page definition, and builds/updates the page with native widgets. I'm planning to eventually build Android, web, and desktop clients.

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

#24
After waiting for what feels like forever, I’m excited to finally explore the last missing piece of Hotwire.

Strada is an optional add-on for Turbo Native apps that enables native components driven by the web. It unlocks progressive enhancement of individual controls without converting entire screens to native.

For example, converting a to a UIBarButtonItem on iOS or rendering a HTML modal with ModalBottomSheetLayout on Android.

It’s important to call out that Strada alone doesn’t unlock new features for Turbo Native apps. Everything you can do with the framework you could already do before. Albeit with much, much more code.

Strada provides structure and organization to the tangled mess that is the JavaScript bridge. It simplifies and standardizes communication between web and native components, which makes building robust native elements a joy.

Just my 2¢, having worked with Turbo Native for 6+ years now.

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

#25
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.

I built a thing that makes it much simpler to make apps: https://www.applin.dev You make a web server that returns JSON defining your UI. Then you make a native iOS app by copy/pasting the provided Main.swift file and adding the URL of your server. The app uses an iOS client library, fetches the JSON page definition, and builds/updates the page with native widgets. I'm planning to eventually build Android, web, and d…

What sort of customers does this bring in? Looks very interesting, are there any public apps made with this or is it more of a internal-data-entry type of people who use it?

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

#26

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.

Oh hey, that's me! Thanks for the shout out, Brad. I'm writing up my thoughts on the Strada launch right now. It will hit my newsletter, blog, and RSS feed tomorrow morning. tl;dr - Strada alone doesn’t unlock new features for Turbo Native apps. Everything you can do with the framework you could already do before. Albeit with much, much more code. Strada provides structure and organization to the tangled mess that is…

subscribed because I saw your comment about newsletter tomorrow. Looking forward to it

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

#27
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:…

Ah yes. Because your preferences are the only right ones. There are many more developers out there who doesn't want / need typescript, and aren't driven by the evangelist influencer opinionated nonsense.

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

#28

Earlier quoted context omitted.

I built a thing that makes it much simpler to make apps: https://www.applin.dev You make a web server that returns JSON defining your UI. Then you make a native iOS app by copy/pasting the provided Main.swift file and adding the URL of your server. The app uses an iOS client library, fetches the JSON page definition, and builds/updates the page with native widgets. I'm planning to eventually build Android, web, and d…

What sort of customers does this bring in? Looks very interesting, are there any public apps made with this or is it more of a internal-data-entry type of people who use it?

Applin is a brand new product. I plan to use it to build and finally launch https://www.cozydate.com/ .

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

#29

After waiting for what feels like forever, I’m excited to finally explore the last missing piece of Hotwire. Strada is an optional add-on for Turbo Native apps that enables native components driven by the web. It unlocks progressive enhancement of individual controls without converting entire screens to native. For example, converting a to a UIBarButtonItem on iOS or rendering a HTML modal with ModalBottomSheetLayout…

I'm not sure I fully understand how it works. The intention is to start out with a WebView app, but slowly replacing the components that might need it with native components, right?

This isn't a React Native Web like approach where you try to cover the same surface area, but rather an individual implementation of each screen, so you could tweak and modify it for the given platform if needed?

Is it possible to embed native controls inside a webview or does this approach only work top down, i.e. does a components parent need to be native for it to be possible to be rendered natively?

Post reply on HN