mini_racer
Bridgetown
mini_racer | Bridgetown | |
---|---|---|
4 | 33 | |
583 | 1,091 | |
0.7% | 2.2% | |
7.2 | 8.9 | |
22 days ago | 8 days ago | |
JavaScript | Ruby | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
mini_racer
-
Ask HN: What side projects landed you a job?
Some years ago I was on a shitty job - not technically, but the company turned out to be inhumane - at a Ruby shop, and on the side I was toying with mini_racer and I just upgraded to some macOS beta where it failed to build. A shitty +1-1 hack† for a compiler flag later and it was back flying.
A month later I received a cold email from a CTO to chat a bit about that PR, turns out they were using mini_racer heavily and forked it for their own purpose, and also created PyMiniRacer for the Python side of things. Next thing I know I got hired. Two years later the company got acquired.
Of course conditionally adding a compiler flag wasn't what got me hired per se, it only got my profile noticed. Probably side projects such as porting go by example to Ruby by implementing a ~1:1 CSP channel API[1], an Electron desktop client for Mattermost basically on a dare[2], ex mode for the Atom editor so that I could have that frackin' `:w`[3], leveraging Blocks to bolt on object-oriented-ness onto C because "closures are a poor man's object"[4], or reverse-engineering the Xbox One USB gamepad and writing a kext to turn it into a HID device on macOS from scratch on a lonely 7+h train ride with passengers judgementally staring at me sideways[4] probably contributed to it a bit.
My takeaway: luck is when preparation meets opportunity; but don't to side projects to get hired, because if you don't get hired then that time is lost. Rather, of all things, scratch your itch, have fun, embrace whatever quirkiness you fancy; no one can take that away from you.
[0]: https://github.com/rubyjs/mini_racer/commit/2086db1bbf2b5de4...
[1]: https://github.com/lloeki/normandy
[2]: https://github.com/lloeki/matterfront
[3]: https://github.com/lloeki/ex-mode
[4]: https://github.com/lloeki/cblocks-clobj/blob/master/main.c
[5]: https://github.com/lloeki/xbox_one_controller
-
YouTube-dl has a JavaScript interpreter written in 870 lines of Python
Cue libv8-node+mini_racer from which PyMiniRacer was born. It is non-trivial but not as hard as one might think.
The most painful part is the libv8 build system and Google tooling, which makes it an absolute PITA for libv8 consumers that are not Chrome.
This is why the libv8 gem was atrocious to keep up to date and to build for several platforms, and why libv8-node was born, because the node build system and source distribution are actually sane.
Disclaimer: worked at Sqreen, now maintainer of libv8-node and collaborator of mini_racer
https://github.com/sqreen/PyMiniRacer
https://github.com/rubyjs/mini_racer
https://github.com/rubyjs/libv8-node
-
Rendering markdown with Markdoc in Rails
Eventually, we’ll want to call this JavaScript from a Rails controller using ExecJS or MiniRacer or some similar tool. None of the Ruby-to-JavaScript gems I found were sophisticated enough to know how to load npm modules with common.js or ES module syntax, so my solution is to just build the JavaScript with a watcher and have that run as part of bin/dev.
-
Anyone having issues with M1Pro?
https://github.com/rubyjs/mini_racer/issues/190 has some info an then this PR: https://github.com/rubyjs/mini_racer/pull/210 that has been merged. Hope that all helps!
Bridgetown
- Bridgetown: Progressive site generator and fullstack framework, powered by Ruby
- Progressive site generator and fullstack framework, powered by Ruby
-
Do we really need variadics?
I'm using bridgetown because I like sitting on the bleeding edge, its basically a newer Jekyll which I would recommend checking out too. Bridgetown has a great modern dev experience but its missing some of the ecosystem from Jekyll. Not a problem for me because I'm really comfortable with Ruby.
-
Why write technical content on a blog and not only on social media
If you want to have a different UI or your blog to look in a very specific way I recommend using Jekyll or Bridgetown.
-
How would I make and deploy a simple website
If I wanted to post a simple website today I would look into Jekyll. There are a ton of articles and answers to common questions etc. It itself is written in Ruby but using it will not likely help you to learn Ruby. One-step in the direction of learning Ruby and getting a simple website could be Bridgetown. This will start you down a path of learning Ruby and not Rails. We use Bridgetown for our company site at Flagrant.
-
How to use View Transitions in Hotwire Turbo
In the Hotwire Turbo world specifically, several discussions about integrating transition animations also took place and a few promising approaches emerged, namely the Turn project or the transitions in Bridgetown. There is also a chapter in the Noel Rappin’s Modern Front-End book and an interesting article but overall, frankly, this topic still fells somewhat early-stage and exploratory.
-
Help with picking a framework for a personal website
https://www.bridgetownrb.com/ static site generator. Can be linked with prism of you want a kind of panel to add new articles.
-
How to integrate a static website to Rails app
FYI. I used Bridgetown as a static site generator recently and rather enjoyed it. https://github.com/bridgetownrb/bridgetown.
- [student help] Using Rails as front end. Is it possible?
-
how to add a simple blog to my SaaS?
If you’re not adept in that right now you’re unlikely to create a system to support it. I would encourage you to look into Jekyll or Bridgetown.rb as blog systems that support all the SEO bells and whistles without you having to recreate them.
What are some alternatives?
execjs - Run JavaScript code from Ruby
Jekyll - :globe_with_meridians: Jekyll is a blog-aware static site generator in Ruby
libv8-node - Package libv8 from Node
Middleman - Hand-crafted frontend development
quickjs - Thin Python wrapper of https://bellard.org/quickjs/
Awesome Jekyll - A collection of awesome Jekyll goodies (tools, templates, plugins, guides, etc.)
PyMiniRacer - PyMiniRacer is a V8 bridge in Python.
Directus - The Modern Data Stack 🐰 — Directus is an instant REST+GraphQL API and intuitive no-code data collaboration app for any SQL database.
pyduktape - Embed the Duktape JS interpreter in Python
Nanoc - A powerful web publishing system
markdoc-rails - Example of rendering markdown using Markdoc with Ruby on Rails
webgen - webgen is a fast, powerful and extensible static website generator