Cookiecutter
这是一个命令行工具,可以从 cookiecutters(项目模板)快速创建项目。非常适合生成Python包项目等。
安装
使用pip包管理器安装cookiecutter:
# 强烈推荐使用pipx。
pipx install cookiecutter
# 如果无法使用pipx,
# 你可以在Python用户目录中安装cookiecutter。
python -m pip install --user cookiecutter
特性
- 跨平台: 支持Windows、Mac和Linux。
- 用户友好: 无需Python知识。
- 多功能: 兼容Python 3.7到3.12版本。
- 多语言支持: 可使用任何语言或标记格式的模板。
用户指南
快速入门
推荐使用pipx
作为命令行工具运行Cookiecutter,可以通过pip install pipx
安装。如果你计划以编程方式使用Cookiecutter,请运行pip install cookiecutter
。
使用GitHub模板
# 系统会提示你输入值。
# 然后它会根据这些值在当前工作目录中创建你的Python包。
# 为了简洁起见,GitHub上的仓库可以直接使用'gh'前缀
$ pipx run cookiecutter gh:audreyfeldroy/cookiecutter-pypackage
使用本地模板
$ pipx run cookiecutter cookiecutter-pypackage/
在Python中使用
from cookiecutter.main import cookiecutter
# 从cookiecutter-pypackage/模板创建项目
cookiecutter('cookiecutter-pypackage/')
# 从cookiecutter-pypackage.git仓库模板创建项目
cookiecutter('gh:audreyfeldroy//cookiecutter-pypackage.git')
详细用法
- 从本地或远程模板生成项目。
- 使用
cookiecutter.json
提示自定义项目。 - 利用预提示、生成前和生成后钩子。
模板创建者指南
- 支持无限目录嵌套。
- 使用Jinja2满足所有模板需求。
- 通过
cookiecutter.json
轻松定义模板变量。
可用模板
在GitHub上发现各种现成的模板。
特别模板
社区
加入社区、贡献或寻求帮助。
支持
- 在GitHub上给我们加星。
- 敬请期待即将推出的支持选项。
反馈
我们重视你的反馈。请以建设性的方式分享你的批评或投诉,以帮助我们改进。
等待回复?
- 请耐心等待,并考虑向社区寻求帮助。
- 对于紧急事务,请联系@audreyfeldroy进行咨询或定制开发。
行为准则
在项目生态系统的所有互动中,请遵守PyPA行为准则。
致谢
由Audrey Roy Greenfeld创建和领导,得到了一群专注的维护者和贡献者的支持。