.gitignore
.readthedocs.yaml
CHANGELOG.md
LICENSE
README.md
pyproject.toml
run_deploy_workflow.sh
.github/workflows/ci.yml
.github/workflows/deploy-pypi.yml
.github/workflows/release.yml
.hypothesis/constants/054569da8f2a4cdf
.hypothesis/constants/09d4419487fa9852
.hypothesis/constants/0d4f5118f93766fb
.hypothesis/constants/0e01706513f89f40
.hypothesis/constants/0e501b4787f6ec6f
.hypothesis/constants/0ec7060d23e4a353
.hypothesis/constants/23296e98dedb31ec
.hypothesis/constants/3dd74d9e0081c0cb
.hypothesis/constants/42edc2b83c9520b4
.hypothesis/constants/59d8035c360d124a
.hypothesis/constants/5f3ad8b2dd96eb89
.hypothesis/constants/63ce41fe42c91416
.hypothesis/constants/6468fb37b451aab4
.hypothesis/constants/6b0442b87ba6328c
.hypothesis/constants/6bacbbc573b6630e
.hypothesis/constants/6f2a43bd7133f38c
.hypothesis/constants/a3c721d2457f00ac
.hypothesis/constants/a6d9a6260c28a29a
.hypothesis/constants/a88c815f44426208
.hypothesis/constants/b50790ab83a5248c
.hypothesis/constants/b905c390b76921fd
.hypothesis/constants/bc51f727ee15a696
.hypothesis/constants/bfaa04fd80bdcbea
.hypothesis/constants/c05689a0458de343
.hypothesis/constants/cd58b929fd05f81b
.hypothesis/constants/cdbf7c375a5956e1
.hypothesis/constants/d0b99b7b0a1c4632
.hypothesis/constants/dbecdeea93796037
.hypothesis/constants/e389cca318ba9e22
.hypothesis/constants/ebd6568867f7f259
.hypothesis/constants/f0eaf4dc5850f42b
.hypothesis/constants/f23b700b69d3361e
.hypothesis/constants/f89cb8323d78d927
.hypothesis/constants/fdc84ea667254f32
.hypothesis/examples/04e6b3400353b141/1a8a59c6e427e816
.hypothesis/examples/04e6b3400353b141/5b38f2eb6f9ad38c
.hypothesis/examples/04e6b3400353b141/9ecdaaf974758d7f
.hypothesis/examples/1a8a59c6e427e816/29235c2fee6c8ef1
.hypothesis/examples/5b38f2eb6f9ad38c/29235c2fee6c8ef1
.hypothesis/examples/9ecdaaf974758d7f/008b31862caaa960
.hypothesis/examples/9ecdaaf974758d7f/0ab27c969b9e88ae
.hypothesis/examples/9ecdaaf974758d7f/0f28b036724efae0
.hypothesis/examples/9ecdaaf974758d7f/10813275232832e2
.hypothesis/examples/9ecdaaf974758d7f/117c7c3a3e955747
.hypothesis/examples/9ecdaaf974758d7f/15475fbbccfbf784
.hypothesis/examples/9ecdaaf974758d7f/1ccf7419de1265fa
.hypothesis/examples/9ecdaaf974758d7f/1f824b5097f53bb6
.hypothesis/examples/9ecdaaf974758d7f/33fe6938c5bc796b
.hypothesis/examples/9ecdaaf974758d7f/3b860a1a02cef278
.hypothesis/examples/9ecdaaf974758d7f/4dded265219486b2
.hypothesis/examples/9ecdaaf974758d7f/6bb92a6e41edd1f1
.hypothesis/examples/9ecdaaf974758d7f/6d381299b70720f3
.hypothesis/examples/9ecdaaf974758d7f/6d3fc8e4c1d0e33b
.hypothesis/examples/9ecdaaf974758d7f/712029a41ab6aa11
.hypothesis/examples/9ecdaaf974758d7f/77946dc558ab962e
.hypothesis/examples/9ecdaaf974758d7f/781dd4ca5186e704
.hypothesis/examples/9ecdaaf974758d7f/79110e804720603a
.hypothesis/examples/9ecdaaf974758d7f/80b3ceb1071ba8f0
.hypothesis/examples/9ecdaaf974758d7f/95e01e9d82b71cd4
.hypothesis/examples/9ecdaaf974758d7f/9d194d018441fb58
.hypothesis/examples/9ecdaaf974758d7f/9faa3dc7b171a53b
.hypothesis/examples/9ecdaaf974758d7f/a7721e8326710272
.hypothesis/examples/9ecdaaf974758d7f/a7d4e9f3df683f4b
.hypothesis/examples/9ecdaaf974758d7f/abbad42943730425
.hypothesis/examples/9ecdaaf974758d7f/ae943b118a8dbffc
.hypothesis/examples/9ecdaaf974758d7f/af5486951f6b5916
.hypothesis/examples/9ecdaaf974758d7f/b065c70208f4eda8
.hypothesis/examples/9ecdaaf974758d7f/bd1a2c6026f407cd
.hypothesis/examples/9ecdaaf974758d7f/c1a0e943c6841203
.hypothesis/examples/9ecdaaf974758d7f/c575d71c4d5bee1c
.hypothesis/examples/9ecdaaf974758d7f/d6db4a0d5fb678f9
.hypothesis/examples/9ecdaaf974758d7f/db67b51b8d13d24c
.hypothesis/examples/9ecdaaf974758d7f/ef7d04ba7a40655e
.hypothesis/examples/9ecdaaf974758d7f/f0828908a18c0558
.hypothesis/examples/9ecdaaf974758d7f/fe0fc6d320daeecd
.hypothesis/examples/9ecdaaf974758d7f/fe9efeaff9213e14
.hypothesis/unicode_data/15.0.0/charmap.json.gz
.hypothesis/unicode_data/15.0.0/codec-utf-8.json.gz
docs/api.md
docs/conf.py
docs/contributing.md
docs/examples.md
docs/index.md
docs/index.rst
docs/installation.md
docs/introduction.md
docs/production_guide.md
docs/requirements.txt
docs/usage.md
examples/llm_invoice_generator.py
examples/minimal_invoice_generator.py
examples/styled_invoice_generator.py
src/pageforge/__init__.py
src/pageforge/api.py
src/pageforge/cli.py
src/pageforge/py.typed
src/pageforge.egg-info/PKG-INFO
src/pageforge.egg-info/SOURCES.txt
src/pageforge.egg-info/dependency_links.txt
src/pageforge.egg-info/entry_points.txt
src/pageforge.egg-info/requires.txt
src/pageforge.egg-info/top_level.txt
src/pageforge/core/__init__.py
src/pageforge/core/builder.py
src/pageforge/core/exceptions.py
src/pageforge/core/models.py
src/pageforge/engines/DejaVuSans.ttf
src/pageforge/engines/__init__.py
src/pageforge/engines/dejavu.zip
src/pageforge/engines/engine_base.py
src/pageforge/engines/reportlab_engine.py
src/pageforge/engines/weasyprint_engine.py
src/pageforge/rendering/__init__.py
src/pageforge/rendering/fonts.py
src/pageforge/rendering/styles.py
src/pageforge/templating/__init__.py
src/pageforge/templating/fragments.py
src/pageforge/templating/template.py
src/pageforge/templating/templates.py
src/pageforge/utils/__init__.py
src/pageforge/utils/config.py
src/pageforge/utils/logging_config.py
src/pageforge/utils/storage.py
tests/conftest.py
tests/test_benchmark.py
tests/test_builder.py
tests/test_custom_fonts_and_styles.py
tests/test_engines.py
tests/test_fragments.py
tests/test_integration.py
tests/test_large_images_and_stress.py
tests/test_malformed_fields.py
tests/test_models.py
tests/test_property_based.py
tests/test_storage.py
tests/test_templates.py
tests/test_unicode_and_rtl.py
tests/test_visual_regression.py
tests/reference_images/complex_layout.png
tests/reference_images/simple_document.png
tests/reference_images/table_styles.png