Open Source Technology

Open source beats at the heart of everything we do. Our million-dollar success story over decades of experience in web development is directly due to the advantages provided by the open source software ecosystem—particularly the Ruby programming language. Now it’s our time to give back to this amazing community, starting with Bridgetown.

Bridgetown mark Bridgetown

Progressive Site Generator & Fullstack Publishing Framework

GitHubWebsite

It all started in the spring of 2020 (what a time that was! 🤪) as a fork of Jekyll, but since then—thanks to the wonderful enthusiasm and financial support of the open source community—Bridgetown has forged its own identity and evolved to offer unparalleled flexibility and capability. Many developers, businesses, and publishers are now using Bridgetown to build new websites and online experiences (including this one!).

Whitefusion is helping to sponsor Bridgetown 2.0 development in 2024 and has big plans to make it not just a great Ruby (and Roda) framework by itself, but a worthy competitor to projects in the JavaScript & Jamstack spaces. We see a lot of great innovation there—yet at the same time, we continue to believe Ruby has great things to offer the web development community (beyond that well-known train-themed framework).

Rubyists, this our chance to define the next ten years of building digital experiences and publications. Ready to cross that Bridge and paint the Town red? (you may groan now… 😂)

Serbea mark Serbea

Similar to ERB, Except Awesomer

GitHubWebsite

What if you combined the best ideas from “brace-style” template languages such as Liquid, Nunjucks, Twig, Jinja, Mustache, etc.—and applied them to the world of ERB? That’s Serbea. You can use Serbea in Rails applications, Bridgetown static sites, or pretty much any Ruby scenario you could imagine.

Use existing helpers as filters in expressions such as {{ "My Link" | sub: "Link", "Page" | link_to: route_path }}, use the “pipeline operator” in any Ruby code not just templates, add front matter to Rails app views, and so much more.

We’ve been developing and using Serbea in-house on production projects, and now it’s available to the open source world at large. We think Serbea will grow into a popular superset of ERB enjoyed by developers of Ruby websites of all shapes and sizes.

Ruby2JS mark Ruby2JS

An Extensible Ruby to Modern JavaScript Transpiler

GitHubWebsite

With Ruby fueling both SSG (Static Site Generation) and SSR (Server-Side Rendering), what about CSR (Client-Side Rendering)? Is it actually possible to write your frontend code (particularly web components, etc.) with Ruby too?

The Ruby2JS project aims to resolve that question. While it’s not a true drop-in Ruby runtime, it does enable the ability to utilize Ruby syntax and many familiar conventions to write code that will be transpiled 1:1 to JavaScript. Not only do you get the benefits that come with “thinking in Ruby” as you write frontend code, but the output JS files are so nicely formatted, they often appear as if they had been hand-coded!

Working source maps plus esbuild integration completes the picture, providing a fantastic alternative to raw JS source. We’re very excited to have become regular contributors to this project and are already using it to build production-ready frontends moving forward.

🕰️ In The Works…

As of Q2 2024, we’ve got a few more projects in the hopper as well—from new Roda plugins to a Bridgetown-based content paywall solution. In particular, we’re pretty excited about Lifeform, an object-oriented form builder which works in Bridgetown, Rails, and virtually any Ruby web framework which supports the render_in view convention. Stay tuned!

🙋🏽‍♀️ Yours?

Working on an open source Ruby or frontend JavaScript project of your own? Need advice, mentorship, or additional development resources? Looking for support on any of the above projects?

We’re Here to Help

On the hunt for self-serve educational materials to level up in Ruby or web development? Check out our Resources page to learn more.

Wondering how we put all these tools to good use for the website projects we work on regularly? Read our Methodology page to find out.

You can now schedule an appointment online! Or fill out this brief form and we’ll follow up shortly to schedule a consultation. Sound good?

Booyeah!