はじめに
アメリカのIT系のWebメディアをみるとPythonプロジェクトのジェネレーターの記事があったので調べてみるとCookiecutterという雛形を作成するツールがあったのでご紹介します。
Cookiecutterについて公式サイトとGitHubページのリンクを載せました。
Cookiecutterについて
Cookiecutterは、プログラミング言語に依存しないコマンドラインユーティリティで、プロジェクトテンプレートから新しいプロジェクトのディレクトリ構造を生成します。
Pythonプロジェクトに特化してはいませんが、Python開発者にとって非常に便利なツールです。
テンプレート
Cookiecutterではプロジェクトのテンプレートが用意されています
- データサイエンス
- Django
- FastAPI
- Flask
- Go
- Kotlin
- Postgres
- Python
- React
- Swift
言語別にみるとPython、Go、kotlin、TypeScript(React)、Swiftがあります。
環境構築
Python3が必要なのでインストールします
brew install python3
Cookiecutterをインストールします
pip3 install cookiecutter
テンプレートの使用
Cookiecutterでテンプレートを使用する方法は2つあります。
- GitHubテンプレートを使用
- ローカルのテンプレート(自作テンプレート)を使用
GitHubテンプレートを使用する方法
1つ目はGitHubで公開されているテンプレートを使用する方法です
前述の「テンプレート」で紹介したページは様々な言語別のテンプレートが紹介されているページで、そこからGitHubへのリンクがあります。
GitHubで公開されているテンプレートを使用するコマンドを例に出すと以下のようになります
# pip3 run cookiecutter gh:[ユーザー名]/[リポジトリ名]
pip3 run cookiecutter gh:audreyfeldroy/cookiecutter-pypackage
ローカルのテンプレート(自作テンプレート)
Cookiecutterはローカルにプロジェクトのテンプレートを作成することができます。
テンプレートの中にcookiecutter.jsonを配置することでjsonファイルに設定したパラメータに基づいてプロジェクトのテンプレートをコマンドラインから作成することができます。
テンプレートの作成の仕方は良いサイトがあったので下記をご覧ください。
おわりに
Cookiecutterを使用すると、Pythonなどのプロジェクトの雛形作成が簡単に行えます。
これにより、構成やセットアップに費やす時間を削減し、開発の本質に集中できます。
興味がある方は下記のチュートリアルをやってみてください!