El desarrollador Joe Masilotti ha creado Ruby Native, una gema de Ruby que busca unificar la experiencia de desarrollo entre diferentes frameworks de JavaScript como ERB, React y Vue. La clave de su enfoque radica en el uso de HTML como base común: la aplicación nativa detecta elementos HTML con atributos específicos (data-native-*) y los traduce a la interfaz de usuario nativa, independientemente del framework utilizado para generarlos. Esto permite que la misma funcionalidad se implemente en diferentes frameworks sin necesidad de cambios significativos en el código nativo.
Masilotti destaca la importancia de crear APIs que se sientan naturales para cada framework, adaptando la sintaxis y los patrones de desarrollo a las expectativas de cada comunidad. Para garantizar la compatibilidad y evitar regresiones, se han implementado pruebas automatizadas en iOS utilizando XCUITest, que verifican la funcionalidad de la interfaz de usuario nativa sin depender de la lógica específica de cada framework. La flexibilidad del sistema incluso abre la posibilidad de utilizarlo con frameworks como Sinatra, más allá de Rails, demostrando la solidez de la abstracción basada en HTML. Masilotti invita a la comunidad de usuarios de Inertia y otros frameworks a probar y proporcionar feedback para mejorar aún más la gema.
