Filter tags from embedded blocks using the page filters from above


You could use the Copy Extension button below to individually install this extension. To install, just paste anywhere in your Roam graph and click "Yes, I Know What I'm Doing".

Manual Installation

If the extension doesn't work after using the copy extension button above, try installing manually using the instructions below.

First create a block with the text {{[[roam/js]]}} on any page in your Roam DB. Then, create a single child of this block and type three backticks. A code block should appear. Copy this code and paste it into the child code block in your graph:

var existing = document.getElementById("roamjs-filter-embeds");
if (!existing) {
  var extension = document.createElement("script");
  extension.src = ""; = "roamjs-filter-embeds";
  extension.async = true;
  extension.type = "text/javascript";

Finally, click "Yes, I Know What I'm Doing".


Any page with embeds will now respect page filters.

To create an embed, type {{embed:((block-uid))}} into a block. Note, that this is a native Roam feature.

To use a page filter, click the filter icon on the top right of a page. The filters will apply to all embeds on the page. Embed block's original page filters will also apply to it.

Only filters applied after installing the extension will apply to embeds. Any previous filter will need to be reapplied for the script to be aware of it.

This extension currently only supports REMOVE filters on a page. This is because Roam will filter out the full embed, since it's on a block without the tag.



This extension is brought to you by RoamJS! If you are facing any issues reach out to or click on the chat button on the bottom right.

If you get value from using this extension, consider sponsoring RoamJS by clicking on the button below!

A special thanks to those who's contributions also helped make this extension possible:

Michael Walsh
Michael Walsh

Other Extensions