Dev Dairy Ep25 - Themes in Elements

Hey Weavers,

This week we’re taking a quick look at how the theme engine works in RapidWeaver Elements, we also take a little time to answer a forum question @KipV had about using Globals.

The theme engine is a super powerful system that allows you to change the entire style of your site with the click of a button, it’s also flexible enough that you can override any of the values within a theme. Watch the video below to learn more about themes in RapidWeaver Elements.

We’re really proud of how Elements is coming together, and we hope you like what we’ve done with Themes. If you have any thoughts or questions about themes or anything else in RapidWeaver Elements, please post them below!

Dan & Team Realmac


I couldn’t help but notice each week how more and more stuff is being completed and added, you don’t mention much of it, it is just there. This is really becoming brilliant!

The Theme functionality is really “thinking different.” WOW!

I’ll answer Kip’s stuff over there but just great!


The global demo was a good example of the flexibility and time saving that an override to the global can bring. Nice!

1 Like

Wow its wonderful to see color change in a global! That will make this a lot easier on me. One of the biggest advancements with rewriting this site was to add Mega Menu so that each drop down could have an advanced description of the topic of the menu and I really love that. Instead of needing a page to describe a section it is all right there in the drop down menu.

On my newer site the sidebar has different colors on each page so I don’t need to update the links individually (thankfully because that site is getting so large that it will be two sites very soon.) The problem was it was a challenge of how I would work with a more traditional drop style navigation in this particular way.

I had quite a few plans for this site where I completely throw out some pages and start over with new ones. That is one reason the homepage refers to 2023 in the future tense! I never got around to overhauling it. I have a stack of yearbooks that I thought would be fun to make a collage out of once I hire a photographer / videographer to do that. So my point is with a major enough redesign on several pages remaking it in a new framework could make sense.

I really like how this is implemented. You have a great app here. Looking forward to the beta.

1 Like

Excellent, we can’t wait to share the beta with you guys soon!

1 Like

So, component vs global naming aside, the theme studio is really nice. One thing I was wondering is if it would be possible to define SVG fill and stroke colours within Elements in order to (for example) change the black ‘elements’ logo in the example above, to white when displayed on the red background?

This is something I routinely do by including a non-visible SVG assets element in a page with a number of logo, icon, etc. definitions that I can then reference within the document itself (you can see an example using icons here - Inspect → body > svg[data-template=“Assets”]). In doing this I can easily change the icon and logo colours on a per-page basis as required simply by setting the file and stroke properties of the svg element referencing the asset(s).

Sounds like that’s doable, here’ a quick video showing how I’d go about that:

btw. Love your website, nice work! It looks like it was hand-coded, right?


Thanks Dan! Great to know that’s doable.

Re: website… yeah, it’s all hand-coded for now. While I’ve been thinking of just building it in Astro, I’ve been holding off doing anything with my site in anticipation of using Elements as I’d really like to move away from having to manipulate and manage code, dependencies, extensions, and build pipelines for everything.

If you happen to be looking for an eager alpha tester :wave:.

And another video with the guy who has fun :crazy_face: it’s getting annoying :angry: Here is a CTA results example :white_check_mark: we would like to see after clicking “download file” :grin:

A very good point. That would make a great addition so that the logo becomes more visible depending on the background.