Jae Wilson @DataCrew
Domo

Domo - Personalization with Domo Bricks (DDX)

April 23, 2024

Hook

If you've ever wanted a Domo landing page that shows different dashboards to different users — without hardcoding anything — domo.env variables in DDX Bricks are the missing piece.

Why It Matters

Without personalization, every user sees the same dashboard list, which means either information overload or a separate page per audience segment. This approach lets you drive visibility from a dataset: add or remove a user's access by editing a row, not a card config. It also decouples the "what content exists" dataset from the "who sees what" dataset, giving you a clean separation that scales to 50+ dashboards without touching the brick's code.

What You'll Learn

  • Read the current user's identity at runtime using domo.env
  • Query a visibility-control dataset to filter cards per user
  • Pull boilerplate card metadata (name, URL, image, copy) from a second dataset
  • Compose both queries into a single main() function that renders a personalized navigation card
  • Structure DDX Brick JavaScript with a bottom-level main() entry point for readability