template_manager

Template Manager - Handles Jinja2 template rendering for application documents

Functions

load_dotenv([dotenv_path, stream, verbose, ...])

Parse a .env file and then load all the variables found as environment variables.

Classes

Environment([block_start_string, ...])

The core component of Jinja is the Environment.

FileSystemLoader(searchpath[, encoding, ...])

Load templates from a directory in the file system.

Path(*args, **kwargs)

PurePath subclass that can make system calls.

Template(source[, block_start_string, ...])

A compiled template that can be rendered.

TemplateManager([base_dir, env_override])

Exceptions

TemplateNotFound(name[, message])

Raised if a template does not exist.

class template_manager.TemplateManager(base_dir='.', env_override=None)[source]
__init__(base_dir='.', env_override=None)[source]
get_env_variables()[source]

Load all environment variables with ABSENDER_ prefix and general variables Keep uppercase naming to match .env file

Return type:

Dict[str, str]

get_template_variables(template_name)[source]

Extract all variables used in a template

Return type:

List[str]

validate_template(template_name, variables)[source]

Validate template against provided variables Returns dict with ‘missing’ and ‘unused’ variable lists

Return type:

Dict[str, List[str]]

render_template(template_name, additional_vars=None)[source]

Render a template with environment variables and additional variables

Return type:

str

render_anschreiben(adressat_vars, ai_content=None)[source]

Render cover letter template with addressee and AI-generated content adressat_vars: lowercase variables for dynamic content ai_content: lowercase variables for AI-generated content

Return type:

str

render_lebenslauf(ai_content=None)[source]

Render CV template with AI-generated content ai_content: lowercase variables for AI-generated content

Return type:

str

save_rendered_template(content, output_path)[source]

Save rendered template content to file

Return type:

None

list_templates()[source]

List all available templates

Return type:

List[str]

template_info(template_name)[source]

Get information about a template including required variables

Return type:

Dict[str, Any]