brand-yml
Unified branding with a single YAML file
brand.yml is a portable YAML-based format for codifying company brand guidelines (logos, colors, fonts, typography) that works across Quarto, Python, and R tooling. It enables developers to create consistently branded reports, applications, dashboards, plots, and presentations from a single _brand.yml file.
The package solves the problem of maintaining consistent branding across different output formats and tools by providing a unified specification that integrates with Posit’s open source ecosystem, including Quarto (v1.6+) and Shiny for both Python and R. Python and R packages are available to read and apply brand.yml files programmatically. This eliminates the need to manually configure themes separately for each tool or output type.
Contributors#
Resources featuring brand-yml#
Theming Made Easy: Introducing brand.yml (Garrick Aden-Buie, Posit) | posit::conf(2025)
Theming Made Easy: Introducing brand.yml
Speaker(s): Garrick Aden-Buie
Abstract:
brand.yml is an exciting new project from Posit that radically simplifies theming. Every data science tool supports some form of theme and appearance customization, but each app framework, output format, or visualization tool requires its own special syntax for theming.
The goal of brand.yml is to create a portable and unified interface for brand-related theming that can be used anywhere that data science artifacts are produced. As a collaboration between the Shiny and Quarto teams, brand.yml provides a single interface to setting baseline themes in reports and apps across the R and Python ecosystems.
In this talk, I’ll introduce brand.yml and showcase the many ways that brand.yml can bring consistent styles to your data science outputs.
Materials - https://github.com/gadenbuie/brand-yml-posit-conf-2025 Slides - https://pkg.garrickadenbuie.com/brand-yml-posit-conf-2025 posit::conf(2025) Subscribe to posit::conf updates: https://posit.co/about/subscription-management/

Brand YML and Dark Mode in Quarto (Gordon Woodhull, Posit) | posit::conf(2025)
Brand YML and Dark Mode in Quarto Speaker(s): Gordon Woodhull
Abstract: Brand YML is a specification to provide consistent color themes, typography, and logos across all applications and packages that support it. Quarto currently implements Brand YML for its HTML and Typst formats. This talk will introduce Brand YML and get into a few of the interesting technical details about how we implemented Brand YML in Quarto. Specifically, I’ll talk about the layering of SCSS styles in our HTML format, and the Typst CSS layer which translates CSS properties into Typst properties. Time and progress permitting, I’ll also talk about applying Dark Mode to your documents by specifying both light and dark brands.
Materials - https://gordonwoodhull.github.io/brand-yml-lightning-talk/#/title-slide posit::conf(2025) Subscribe to posit::conf updates: https://posit.co/about/subscription-management/

Company Branding Workflow Demo Live Q&A - February 26th
Hi, there! If you started here first, please refer back to the Demo: https://youtu.be/U48y0_yzEPY
This Q&A Session followed a workflow demo on “how to apply consistent company branding across reports, dashboards, and apps”
Key Links:
- GitHub Repo for Example: https://github.com/skaltman/brand-yml-demo
- brand.yml GitHub repo: https://posit-dev.github.io/brand-yml/
- Follow-along blog post: https://posit.co/blog/unified-branding-across-posit-tools-with-brand-yml/
Additional Resources Mentioned in Q&A:
- Quarto specific page on brand: https://quarto.org/docs/authoring/brand.html
- Typography: https://posit-dev.github.io/brand-yml/brand/typography.html
- brand.yml + pkgdown: https://github.com/rstudio/bslib/tree/main/pkgdown
- LLM brand.yml prompt: https://posit-dev.github.io/brand-yml/articles/llm-brand-yml-prompt/
- Inspiration/gallery: https://posit-dev.github.io/brand-yml/inspiration/
Please note, the main demo will be here: https://youtu.be/U48y0_yzEPY?feature=shared
If you’d like to ask questions anonymously, you can use: https://pos.it/demo-questions
Company-branded reports, apps, and dashboards made easier with brand.yml & Posit
You will learn: How to apply consistent company branding across reports, dashboards, and apps
Key Links:
- GitHub Repo for Example: https://github.com/skaltman/brand-yml-demo
- brand.yml GitHub repo: https://posit-dev.github.io/brand-yml/
- Follow-along blog post: https://posit.co/blog/unified-branding-across-posit-tools-with-brand-yml/
- Q&A after the Demo: https://youtube.com/live/kuEbRfmm4G4?feature=share
Additional Resources Mentioned in Q&A:
- Quarto specific page on brand: https://quarto.org/docs/authoring/brand.html
- Typography: https://posit-dev.github.io/brand-yml/brand/typography.html
- brand.yml + pkgdown: https://github.com/rstudio/bslib/tree/main/pkgdown
- LLM brand.yml prompt: https://posit-dev.github.io/brand-yml/articles/llm-brand-yml-prompt/
- Inspiration/gallery: https://posit-dev.github.io/brand-yml/inspiration/
Why we think this is important: Consistent company branding in your reports and apps (with your logo, colors, and fonts) can help make your work look more professional, but are often tricky to get right.
Common challenges we’ve heard from the community:
- Excessive manual effort: Applying colors, fonts, and logos across reports, apps, and dashboards takes time and is prone to errors.
- Difficult to update: When brand guidelines change, it’s difficult to update all products consistently.
- Team consistency: Ensuring all contributors follow branding guidelines is challenging to manage.
How to join future events: We host workflow demos the last Wednesday of every month. You can add them to your calendar with this link: https://www.addevent.com/event/Eg16505674
Full playlist of workflow demo recordings: https://www.youtube.com/playlist?list=PL9HYL-VRX0oRsUB5AgNMQuKuHPpNDLBVt
Have suggestions? Comment below.
Thank you for joining us!
Communicating insights for impact | Noah Branham | Data Science Hangout
To join future data science hangouts, add it to your calendar here: https://pos.it/dsh - All are welcome! We’d love to see you!
We were recently joined by Noah Branham, senior manager of analytics at DraftKings, to chat about marketing measurement, data science career paths, and communicating analysis to stakeholders.
In this Hangout, one topic we explore is Noah’s three-trimester framework for career development, focusing on how he progressed from developing basic data analytics skills to mastering predictive modeling and optimization problems, and finally transitioning to a management role. He emphasizes the importance of understanding business problems before applying data techniques and how the skills needed for success as an analyst differ from those needed for a manager.
Resources mentioned in the video and zoom chat: Speak at Posit Conf 2025 → https://posit.co/blog/speak-at-posit-conf-2025/ Cascadia R Conf → https://cascadiarconf.com/ Unified Branding with brand.yml → https://posit.co/blog/unified-branding-across-posit-tools-with-brand-yml/ The Motivated Speaker Book → https://www.articulationinc.com/the-motivated-speaker-book/ Model cards for transparent reporting → https://vetiver.posit.co/learn-more/model-card.html Upcoming End-to-End Workflow Demo → https://pos.it/team-demo
If you didn’t join live, one great discussion you missed from the zoom chat was all about running, including marathon advice, favorite races, and being a proud member of the Slow AF Run Club It didn’t have much to do with data, but it was definitely about being a community. You should really join us live to get in on the fun!
► Subscribe to Our Channel Here: https://bit.ly/2TzgcOu
Follow Us Here: Website: https://www.posit.co Hangout: https://pos.it/dsh LinkedIn: https://www.linkedin.com/company/posit-software Bluesky: https://bsky.app/profile/posit.co
Thanks for hanging out with us!
Create slideshows with Markdown & Python Code! (Quarto Tutorial)
Learn how to transform Markdown and Python code into interactive slide presentations using Quarto and reveal.js. This tutorial covers essential features like code execution, data visualization, LaTeX equations, custom styling, and slide transitions. Starting with basic slides, we’ll explore advanced functionality including background customization, animations, chalkboard annotations, and brand theming. Perfect for data scientists, educators, and developers looking to create engaging technical presentations.
Github repo: https://github.com/KeithGalli/quarto-projects Quarto slideshow demo page: https://quarto.org/docs/presentations/revealjs/ Quarto crash course video: https://youtu.be/_VKxTPWDhA4?si=VZxkW3kgtx1W_AIW Blog article on _brand.yml: https://posit.co/blog/unified-branding-across-posit-tools-with-brand-yml/
Video by @KeithGalli
Video timeline! 0:00 - Video Overview 0:39 - Getting Started with the Code (link in description) 2:22 - Quarto Slideshow Basics 6:15 - Generating Powerpoint (pptx) Presentation Outputs 7:14 - RevealJS HTML Output Options & Features (Code Animation, Line Highlighting) 11:00 - Data Visualization in Quarto (Matplotlib, Plotly, Seaborn) 14:40 - Displaying Dataframes on Slides 18:15 - Presentation Features (Incrementally Revealing Items, Image Positioning, Slide Transitions, etc.) 25:02 - Keyboard Shortcuts Functionality (Zoom in, Chalkboard, Save Presentation as PDF, etc.) 29:14 - Styling Presentations with a _brand.yml File (New in Quarto 1.6) 34:39 - Jupyter Notebook to RevealJS Slideshow
#Python #Quarto #DataVisualization #pythoncontent
