make
Create project layout from jinja2 templates.
What it is and what it does
Make is a command-line tool that scaffolds new projects by rendering Jinja2 templates into a project directory structure. It reads configuration from a project.conf or project.json file in a template source, prompts for variable values interactively, and generates the final project layout with files and directories named and populated using those values. The tool supports fetching templates from local paths, zip files, GitHub and GitLab repositories (with shorthand syntax), and cookiecutter-style templates.
You define a template by creating a directory with a project.conf or project.json configuration file and template files using Jinja2 syntax. The tool then handles downloading the template (if remote), collecting user input for template variables, and rendering the entire directory tree. It's useful for automating repetitive project setup tasks—creating boilerplate for Python packages, web applications, or other standardized structures—without requiring a separate cookiecutter dependency.
Use it for:
- Scaffold new Python packages with consistent structure, tests, and documentation choices from a single template.
- Generate project layouts from GitHub or GitLab repositories without manually cloning and copying files.
- Create reusable project templates for teams with conditional sections (e.g., optional test frameworks or doc generators).
- Automate setup of web application or microservice boilerplate with environment-specific configuration.
- Use existing cookiecutter templates via the same command-line interface without learning a separate tool.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Generates project directory structures and files from Jinja2 templates, supporting local paths, zip files, GitHub/GitLab repositories, and cookiecutter-style templates.
No—this package is abandoned (last release October 2020, last commit January 2022) with no active maintenance. While it has low install friction and a permissive license, the lack of updates means it will not receive security patches, dependency upgrades, or bug fixes. For new projects, use actively maintained alternatives like cookiecutter or copier instead.
Install
make on PyPI
pip
pip install makeuv
uv add makepoetry
poetry add makeInstalling make
Before you install
Low install friction with only two runtime dependencies (Jinja2 and jinja2-time). However, the package is abandoned—last release was 2020-10-27 and last commit 2022-01-15—so no maintenance or security updates should be expected.
License in practice
BSD License is permissive and poses no restrictions on use, modification, or distribution in commercial or private projects.
Quickstart
pip install make
python -m make project gh:fholmer/simple
Verify before relying
- Whether the package works reliably with modern Python versions beyond 3.8, given its abandoned status and lack of recent testing.
- Compatibility with current versions of Jinja2 and jinja2-time, and whether dependency updates have introduced breaking changes.
Package facts
| License | BSD License (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — Jinja2, jinja2-time |
| Maintenance | abandoned — 2,117 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 177,456/month — #10,213 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: make-0.1.6.post2-py3-none-any.whl
Keywords: make, project, template
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
cookiecutterCookiecutter is a command-line tool that…
unclear · top 5,000 on PyPI
git-changelogGenerates changelogs automatically from git…
permissive · top 15,000 on PyPI
sphinx-jinjaA Sphinx extension that lets you embed Jinja2…
permissive · top 5,000 on PyPI
Jinja2Jinja2 is a templating engine that renders…
permissive · top 100 on PyPI
cruftcruft creates new projects from Cookiecutter…
permissive · top 15,000 on PyPI
ignoreDownloads and installs common .gitignore…
permissive · top 15,000 on PyPI
PyScaffoldPyScaffold generates a complete Python project…
permissive · top 5,000 on PyPI
jinja2-strcaseAdds string-case conversion filters to Jinja2…
permissive · top 15,000 on PyPI
mkdocs-macros-pluginExtends MkDocs with Jinja2 templating to use…
permissive · top 5,000 on PyPI
jinja2-simple-tagsProvides base classes to create custom Jinja2…
permissive · top 5,000 on PyPI