Our great sponsors
-
framework
Mayu is a live updating server-side component-based VDOM rendering framework written in Ruby (by mayu-live)
-
ruby-js
Using this translation tool, you can run Vite server and write code in Ruby syntax using JS API.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
importmap-rails
Use ESM with importmap to manage modern JavaScript in Rails without transpiling or bundling.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
I'm working on a framework inspired by React/Next.js which turns Haml into Ruby. It's 100% server side, but it runs pretty fast. I'm currently working on a rewrite, I just wish I had more time to work on it.
https://github.com/mayu-live/framework
https://mayu.live/
Little confused as to why it has vite in it‘s name, it seems unrelated to https://vitejs.dev/
It's been a long time dream for me since about 2013 when I started getting deep into Ruby and Rails, to be able to write Ruby code for the frontend instead of JavaScript. I was a lover and adopter of CoffeeScript (which had it's flaws and imperfections), but that mostly got killed by ES6. I wrote some PoCs with Opal[1] that felt pretty good to write, but the overhead was rough (this was many years ago so things might be different now) and I never really felt like I didn't have to know about or care about the underlying javascript. I tend to discard leaky abstractions as I feel they often add more complexity than they were meant to cover in the first place.
Has anybody used this or Opal or anything else? What is the state of "write your frontend in Ruby" nowadays?
[1]: https://github.com/opal/opal
With importmaps (https://github.com/rails/importmap-rails) and Hotwire (https://hotwired.dev/), you write plain js and serve it.
Also packages are served via CDN. There is no tree shaking. Rails got rid of the whole bundling step.
You can use the Javascript API and the syntax is a joy. I used it to make an electron app with videoplayer.
[1] https://github.com/largo/ruby.wasm
Thanks!
Both! I needed something like JSX, and I found Rux [1] but I had some issues with it, and then I found syntax_tree-haml [2] which gave me an AST that I could transform into Ruby. This is what the transformation looks like: https://gist.github.com/aalin/c0e4b0360a1f84d0283149fe4b2ce6...
I have always liked Haml because it's compact and easy to read.
[1] https://github.com/camertron/rux
[2] https://github.com/ruby-syntax-tree/syntax_tree-haml
Thanks!
Both! I needed something like JSX, and I found Rux [1] but I had some issues with it, and then I found syntax_tree-haml [2] which gave me an AST that I could transform into Ruby. This is what the transformation looks like: https://gist.github.com/aalin/c0e4b0360a1f84d0283149fe4b2ce6...
I have always liked Haml because it's compact and easy to read.
[1] https://github.com/camertron/rux
[2] https://github.com/ruby-syntax-tree/syntax_tree-haml
Related posts
- Deploying container applications on AWS with CI/CD pipelines
- Implementing CI/CD pipeline with GitHub Actions, and GitHub Pages in a React app.
- All web applications may be created in the optimal environment created by Ruby, JS, and Vite.
- Setup React Typescript with Vite & ESLint
- Approaches to Styling React Components, Best Use Cases