{"id":20765362,"url":"https://github.com/kwlo/python-pptx-templater","last_synced_at":"2025-04-30T09:51:34.030Z","repository":{"id":53652580,"uuid":"217887063","full_name":"kwlo/python-pptx-templater","owner":"kwlo","description":"Create customizable PowerPoint Presentation (.pptx) using a predefined layout template","archived":false,"fork":false,"pushed_at":"2021-03-20T02:03:14.000Z","size":485,"stargazers_count":34,"open_issues_count":1,"forks_count":5,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-14T12:58:11.840Z","etag":null,"topics":["jinja2","office","powerpoint","pptx","python","python3","template"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kwlo.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-10-27T16:57:41.000Z","updated_at":"2025-03-08T17:05:37.000Z","dependencies_parsed_at":"2022-09-22T04:11:47.182Z","dependency_job_id":null,"html_url":"https://github.com/kwlo/python-pptx-templater","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kwlo%2Fpython-pptx-templater","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kwlo%2Fpython-pptx-templater/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kwlo%2Fpython-pptx-templater/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kwlo%2Fpython-pptx-templater/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kwlo","download_url":"https://codeload.github.com/kwlo/python-pptx-templater/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251679834,"owners_count":21626607,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["jinja2","office","powerpoint","pptx","python","python3","template"],"created_at":"2024-11-17T11:16:27.521Z","updated_at":"2025-04-30T09:51:34.004Z","avatar_url":"https://github.com/kwlo.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"python-pptx-templater\n=====================\n\npython-pptx-templater is a tool to create highly customizable PowerPoint presentation using the jinja template languages.\nUser specifies the layouts and placeholders and the template will render the presentation.\n\nExample\n-------\n\nInput\n\n.. image:: https://raw.githubusercontent.com/kwlo/python-pptx-templater/master/docs/static/images/sample_input.png\n\nUsing Template JSON:\n\n.. code-block:: text\n\n    {\n        'slides': [\n            {\n                'layoutSlideNum': 0,\n                'text': {\n                    'name': 'Paul'\n                }\n            },\n            {\n                'layoutSlideNum': 0,\n                'text': {\n                    'name': 'Joe'\n                }\n            },\n            {\n                'layoutSlideNum': 1,\n                'text': {\n                    'dog': {\n                        'name': 'John Cena'\n                    }\n                }\n            },\n        ]\n    }\n\nOutput\n\n.. image:: https://raw.githubusercontent.com/kwlo/python-pptx-templater/master/docs/static/images/sample_output.png\n\nInstall\n-------\n\n.. code-block:: text\n\n    pip install python-pptx-templater\n\n\nUsage\n-----\n\n.. code-block:: text\n\n    from pptx_templater.core import convert\n\n\n    def test_conversion():\n        currpwd = os.path.dirname(os.path.abspath(__file__))\n        srcpath = f'{currpwd}/fixtures/test_presentation_layout.pptx'\n        destpath = f'{currpwd}/test_outputs/updated.pptx'\n\n        j = {\n            'slides': [\n                {\n                    'layoutSlideNum': 0,\n                    'text': {\n                        'name': 'Paul'\n                    }\n                },\n                {\n                    'layoutSlideNum': 0,\n                    'text': {\n                        'name': 'Joe'\n                    }\n                },\n                {\n                    'layoutSlideNum': 1,\n                    'text': {\n                        'dog': {\n                            'name': 'John Cena'\n                        }\n                    }\n                },\n            ]\n        }\n\n        convert(srcpath, destpath, j)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkwlo%2Fpython-pptx-templater","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkwlo%2Fpython-pptx-templater","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkwlo%2Fpython-pptx-templater/lists"}