brand-yml0.1.1
Published
Read brand yaml files, a unified way to store brand information.
pip install brand-yml
Package Downloads
Authors
Project URLs
Requires Python
>=3.9
Dependencies
- eval-type-backport
>=0.2.0 - htmltools
>=0.2.0 - pydantic
>=2 - ruamel-yaml
>=0.18.0 - griffe
>=1; extra == "docs" - ipykernel
; extra == "docs" - nbclient
; extra == "docs" - nbformat
; extra == "docs" - pyyaml
; extra == "docs" - quartodoc
>=0.7; extra == "docs" - pyright
>=1.1.251; extra == "test" - pytest
>=8; extra == "test" - syrupy
>=4; extra == "test" 
brand.yml Python Package
Create reports, apps, dashboards, plots and more that match your
company’s brand guidelines with a single _brand.yml file.
brand.yml is a simple, portable YAML file that codifies your company’s brand guidelines into a format that can be used by Quarto, Python and R tooling to create branded outputs. Our goal is to support unified, branded theming for all of Posit’s open source tools—from web applications to printed reports to dashboards and presentations—with a consistent look and feel.
With a single _brand.yml file you can collect brand logos, colors,
fonts and typographic choices, typically found in your company’s brand
guidelines. This _brand.yml can be used Quarto
and Shiny for Python to instantly basic
themes that match the brand guidelines.
Example
from brand_yml import Brand
brand = Brand.from_yaml_str(
    # Typically, this file is stored in `_brand.yml`
    # and read with `Brand.from_yaml()`.
    """
    meta:
      name: Posit Software, PBC
      link: https://posit.co
    color:
      palette:
        pblue: "#447099"
        green: "#72994E"
        teal: "#419599"
        orange: "#EE6331"
        purple: "#9A4665"
        gray: "#707073"
      primary: blue
      secondary: gray
      success: green
      info: teal
      warning: orange
      danger: purple
    typography:
      base:
        family: Open Sans
        weight: 300
    """
)
brand.meta.name
BrandMetaName(full='Posit Software, PBC')
brand.color.primary
'blue'
brand.typography.base.model_dump()
{'family': 'Open Sans', 'weight': 300, 'size': None, 'line_height': None}
Installation
From PyPI
uv pip install brand_yml
From GitHub
uv pip install "git+https://github.com/posit-dev/brand-yml"