ViewComponents and the Future of Assets with Joel Hawksley

After Jason talked about his side project last week, he tells us he had to abandon Stripe checkout and did something else instead, and Chris announced he just did a Stripe Checkout video for GoRails this week. Joining us on today’s episode, we have Joel Hawksley, an Engineer at GitHub and creator of ViewComponent. We learn what ViewComponents are, how Joel came up with the idea, and his latest experiment and vision for it, which is a big one. Joel tells us some ideas he has for Cuprite, and Andrew talks about how Percy is a nice tool to use. Also, for those of you who haven’t used the components library or maybe haven’t started thinking about building Rails apps in terms of components, Joel is here to help answer some questions Andrew has for him.  

[00:03:23] Joel tells us about himself and what he does at GitHub.

[00:05:38] Find out what ViewComponents are and how Joel came up with this idea.

[00:09:38] Jason wonders if there are any experiments that Joel has tried that didn’t work out with ViewComponent or things that were experiments that were really successful.


[00:10:52] Joel fills us in on his latest experiment and his vision for it.

[00:16:33] Joel tells us about generating the styled component in React inline and he brings up a problem with view caching with styled components where he needs help from people.

[00:21:12] Andrew talks about a gnarly Tailwind class he did.

[00:22:52] Joel fills us in on some cool things they started experimenting with.  He also mentions looking at Cuprite and having some wild ideas for it.

[00:24:56] Andrew and Joel chat about using Percy.

[00:29:36] Andrew asks Joel when to reach for the partial over the component.

[00:31:01] Since the last time they talked, Joel said that they had a lot of success in building components out of smaller components, and Andrew wants to know if this is still the case.

[00:32:16] Learn more about using partial components.

[00:33:39] Find out what Joel thinks makes a good component. 

[00:38:30] Andrew asks Joel if some cool things he’s seen with ViewComponents that other people have done.

[00:41:00] Jason wonders if Joel has any predictions and where does he think this is going. 

[00:43:34] Joel chats about parallels in between the JavaScript and the CSS space.

[00:46:09] Jason brings up ViewComponent and a PR that was opened to get it into Rails, and then he found out that it isn’t going to be put into Rails, and Joel explains in depth the reason behind this.  

[00:51:09] RailsConf 2021 is coming up and Joel tells us what he’ll be talking about.

[00:55:17] Find out where you can follow Joel online.


Jason Charnes

Chris Oliver

Andrew Mason


Joel Hawksley




Joel Hawksley Website
The Ruby Blend Podcast-Episode 9: ViewComponent at GitHub with Joel Hawksley

Stripe Checkout in Rails with the Pay gem by Chis Oliver

React on Rails-GitHub

CSS encapsulation #677-GitHub

Styled components

CSS Modules-GitHub

Primer ViewComponents



RailsConf 2021

Login to Add New Comment
No comments have been posted yet, be the first one to comment.