April 9, 2026
When HTML goes undercover
Building a framework-agnostic Ruby gem (and making sure it doesn't break)
Hidden divs, big vibes: devs cheer while others yell “Hotwire clone”
TLDR: Ruby Native uses hidden page elements to drive native app screens across Rails, React, and Vue, and it just passed a real test with a new navbar. Comments buzzed with Hotwire comparisons and wallet talk, as readers asked if the monthly plan covers Apple/Google store fees—showing excitement and cost anxiety in equal measure.
Ruby Native’s bold move: make one set of “hidden” webpage bits tell a phone app what to draw—across Rails templates, React, and Vue. The dev behind it shipped a native navbar and admitted he leans on real users for the Inertia setup (that bridge between web pages and app-like navigation). The crowd? Split and loud. One camp is hyped that it “just works” no matter the tool; the other is side‑eyeing, calling it a remix of Hotwire Native.
The biggest spark: comparisons. vmsp drops the first match—“Sort of like Hotwire Native”—and suddenly everyone’s debating whether this is clever engineering or a familiar trick in a new coat. Meanwhile, achayala shows support by saying they also went “framework‑agnostic,” linking their own write‑up, proof the trend is bigger than one project. But the sleeper drama comes from thunderbong, who cuts through the code talk and goes straight to the wallet: do those pricing tiers include Apple and Google’s app store fees? Cue the collective gulp. Jokes flew about “HTML all the way down,” with memes casting hidden divs as tiny stagehands moving the set behind the scenes. Love it or label it a look‑alike, the community is loud, curious, and very, very budget‑minded.
Key Points
- •Ruby Native standardizes on hidden HTML elements with data-native-* attributes as cross-framework “signal elements.”
- •A native app uses a MutationObserver to read the DOM and render corresponding native UI, independent of the generating framework.
- •ERB and React implementations produce identical HTML output: ERB uses blocks/builders; React uses thin components and props.
- •React components avoid state/effects, mapping props directly to data attributes to minimize framework-specific logic.
- •Feedback from daily Inertia users informed API naming and patterns, helping keep the library idiomatic and catch regressions.