Skip to main content

A python development boilerplate generator

Project description

Logo

BoilrPy is a Python project automation tool that simplifies the process of creating new Python projects. It generates a standardized project structure, including essential files and configurations, allowing developers to quickly start working on their Python projects.

PyPI version License: MIT Python Coverage

Installation

You can install BoilrPy directly from PyPI:

pip install boilrpy

๐Ÿ“ฆ Dependency Managers

Boilrpy supports multiple Python dependency managers, each with its own strengths:

Supported Managers

Manager Speed Lock File Use Case Installation
pip โญโญโญ โŒ Simple projects, beginners Pre-installed with Python
poetry โญโญ โœ… Professional projects, teams pipx install poetry
uv โญโญโญโญโญ โœ… Modern projects, speed-focused pip install uv
conda โญ โŒ Data science, scientific computing Download from anaconda.com

Quick Comparison

  • ๐Ÿ pip: Traditional, universal, simple
  • ๐Ÿ“ฆ poetry: Modern, professional, reproducible
  • โšก uv: Blazingly fast (10-100x faster than pip)
  • ๐Ÿ”ฌ conda: Best for data science and non-Python dependencies

For detailed information, see Dependency Managers Guide.

Quick Start

Create a new Python project with boilrpy:

from boilrpy import create_project

create_project(
    name="my_awesome_project",
    version="0.1.0",
    license="MIT",
    dependencies_manager="poetry" # or "pip", "uv", "conda"
)

Or use the command-line interface:

boilrpy

Features

  • Create a new Python project with a standardized structure
  • Generate essential files (LICENSE, .gitignore, README.md, etc.)
  • Initialize a Git repository
  • Set up dependency management (Poetry or pip)
  • Create a Dockerfile and .dockerignore
  • Support for multiple license types
  • Configurable project

Usage

To create a new Python project using the CLI, run:

boilrpy
# Check installed dependency managers
boilrpy --check-deps

Follow the prompts to configure your project. You'll be asked for:

  • Project name
  • Version
  • License type
  • Dependency management preference (Poetry or pip)
  • And more...

Project Structure

boilrpy generates the following project structure:

Without flask

your_project/
โ”œโ”€โ”€ Dockerfile     (if using Docker)
โ”œโ”€โ”€ .dockerignore  (if using Docker)
โ”œโ”€โ”€ .pylintrc      (if using pylint)
โ”œโ”€โ”€ .gitignore
โ”œโ”€โ”€ LICENSE
โ”œโ”€โ”€ README.md
โ”œโ”€โ”€ CHANGELOG.md
โ”œโ”€โ”€ pyproject.toml (if using Poetry)
โ”œโ”€โ”€ poetry.lock    (if using Poetry)
โ”œโ”€โ”€ requirements.txt
โ”œโ”€โ”€ main.py        (project entrypoint)
โ””โ”€โ”€ tests/
    โ””โ”€โ”€ __init__.py

With flask

your_project/
โ”œโ”€โ”€ Dockerfile     (if using Docker)
โ”œโ”€โ”€ .dockerignore  (if using Docker)
โ”œโ”€โ”€ .pylintrc      (if using pylint)
โ”œโ”€โ”€ .gitignore
โ”œโ”€โ”€ .env
โ”œโ”€โ”€ LICENSE
โ”œโ”€โ”€ README.md
โ”œโ”€โ”€ CHANGELOG.md
โ”œโ”€โ”€ pyproject.toml (if using Poetry)
โ”œโ”€โ”€ poetry.lock    (if using Poetry)
โ”œโ”€โ”€ requirements.txt
โ”œโ”€โ”€ app.py         (flask entrypoint)
โ”œโ”€โ”€ static/        (assets folder)
โ”‚   โ””โ”€โ”€ css/
โ”‚   |   โ””โ”€โ”€ style.css
โ”‚   โ””โ”€โ”€ js/
โ”‚       โ””โ”€โ”€ script.js
โ”œโ”€โ”€ templates/     (html files)
โ”‚   โ””โ”€โ”€ base.html
|   โ””โ”€โ”€ index.html
โ””โ”€โ”€ tests/
    โ””โ”€โ”€ __init__.py

Run this command to launch server:

flask run

By default your flask app is accessible at this address: http://127.0.0.1:5000 (see app.py)

This configuration is for development

Configuration

Boilrpy uses sensible defaults, but you can customize the project creation process by answering the prompts during project creation.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Support

If you encounter any problems or have any questions, please open an issue on the GitHub repository.

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

boilrpy-0.8.0.tar.gz (21.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

boilrpy-0.8.0-py3-none-any.whl (31.9 kB view details)

Uploaded Python 3

File details

Details for the file boilrpy-0.8.0.tar.gz.

File metadata

  • Download URL: boilrpy-0.8.0.tar.gz
  • Upload date:
  • Size: 21.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for boilrpy-0.8.0.tar.gz
Algorithm Hash digest
SHA256 dbe33a7260351eeee8a2a00222e0f1271d58f9d88bf9d6ee764470e41ab8467a
MD5 bd648f4eb0857f50cddcf37f360f47fc
BLAKE2b-256 025e9f456a6801e3e2a20cd0742c309e7b0d82f54625db8e4ab6d324558cd7a0

See more details on using hashes here.

File details

Details for the file boilrpy-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: boilrpy-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 31.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for boilrpy-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 287f24d6fbfd631312ae03ff534ffd35d330a5dfe71ca0fc738215d3255748c4
MD5 de37f9ccdd1066aa7e5b5a4c62db4509
BLAKE2b-256 432a99444f87cfb2ae65ceee008b328fa70cfe5cb1addd9269660d1b79fdfc20

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page