Module

fonts.generator

Generate CSS for self-hosted fonts.

Classes

FontCSSGenerator
Generates @font-face CSS for downloaded fonts.
1

Generates @font-face CSS for downloaded fonts.

Methods 1

generate
Generate fonts.css content. Uses relative paths (e.g., 'fonts/outfit-400.woff2…
2 str
def generate(self, font_mapping: dict[str, list[FontVariant]], font_path_prefix: str = 'fonts') -> str

Generate fonts.css content.

Uses relative paths (e.g., 'fonts/outfit-400.woff2') since fonts.css is placed at assets/fonts.css and font files are at assets/fonts/. This ensures compatibility with any base URL configuration.

Parameters 2
font_mapping dict[str, list[FontVariant]]

Dict of font name -> list of variants

font_path_prefix str

URL prefix for font files (relative to fonts.css location)

Returns

str

Complete CSS content as string