ct3
Cheetah is a template engine and code generation tool
What it is and what it does
Cheetah3 is a template engine and code generation tool that can be used standalone or combined with other frameworks. According to its description, it is principally used for web development but is flexible enough to generate C++ game code, Java, SQL, form emails, and even Python code.
The package has no runtime dependencies and provides precompiled wheels for Python 2.7 through 3.14 across multiple architectures (x86_64, aarch64, arm64, Windows). It is actively maintained with recent repository activity and supports a broad range of Python versions.
Use it for:
- Generate dynamic HTML content in web applications using template directives
- Produce boilerplate code in C++, Java, or SQL from template definitions
- Create templated email messages with dynamic content substitution
- Generate Python code programmatically as part of build or development workflows
- Build code generation pipelines for multi-language projects
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Cheetah3 is a template engine and code generation tool that processes templates to produce output in various languages including Python, C++, Java, and SQL.
Yes. Cheetah3 is a stable, actively maintained template engine with no dependencies, broad Python version support from 2.7 through 3.14, no known vulnerabilities, and a permissive MIT license. It is suitable for web development, code generation, and general templating tasks.
Install
ct3 on PyPI
pip
pip install ct3uv
uv add ct3poetry
poetry add ct3Installing ct3
Before you install
Medium install friction due to compiled wheels across multiple platforms and Python versions, but the package is actively maintained with recent commits as of 2026-08-08.
License in practice
MIT license is permissive, allowing free use, modification, and distribution with minimal restrictions.
Quickstart
pip install ct3
import ct3
# Use ct3 to process template files for code or content generation
Verify before relying
- Specific API and import paths for basic template processing workflows
- Whether Python 2.7 support remains functional given the modern Python focus
- Performance characteristics for large-scale code generation tasks
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 258 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 2,001,401/month — #3,370 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: ct3-3.4.0.post5-cp27-cp27mu-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; ct3-3.4.0.post5-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl; ct3-3.4.0.post5-cp310-cp310-macosx_11_0_arm64.whl; ct3-3.4.0.post5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; ct3-3.4.0.post5-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.whl; ct3-3.4.0.post5-cp310-cp310-win_amd64.whl; ct3-3.4.0.post5-cp311-cp311-macosx_11_0_arm64.whl; ct3-3.4.0.post5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; ct3-3.4.0.post5-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.whl; ct3-3.4.0.post5-cp311-cp311-win_amd64.whl; ct3-3.4.0.post5-cp312-cp312-macosx_11_0_arm64.whl; ct3-3.4.0.post5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; ct3-3.4.0.post5-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.whl; ct3-3.4.0.post5-cp312-cp312-win_amd64.whl; ct3-3.4.0.post5-cp313-cp313-macosx_11_0_arm64.whl; ct3-3.4.0.post5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; ct3-3.4.0.post5-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.whl; ct3-3.4.0.post5-cp313-cp313-win_amd64.whl; ct3-3.4.0.post5-cp314-cp314-macosx_11_0_arm64.whl; ct3-3.4.0.post5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Keywords: template
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
Cheetah3Cheetah3 is a template engine and code…
permissive · top 15,000 on PyPI
licenseheadersBatch-updates or adds license headers to source…
permissive · top 15,000 on PyPI
TempitaTempita is a lightweight templating engine that…
permissive · top 15,000 on PyPI
MakoMako compiles Python-embedded templates into…
permissive · top 1,000 on PyPI
cogappCog executes Python code snippets embedded in…
permissive · top 15,000 on PyPI
Jinja2Jinja2 is a templating engine that renders…
permissive · top 100 on PyPI
htmlBuilderRender HTML by writing Python code, using…
permissive · top 15,000 on PyPI
yattagYattag generates HTML or XML documents using…
copyleft · top 5,000 on PyPI
empyEmPy is a templating system that embeds Python…
permissive · top 15,000 on PyPI
SphinxSphinx generates professional documentation…
permissive · top 1,000 on PyPI