Skip to main content

A simple and quick command line tool to create python packages.

https://badge.fury.io/py/do-pack.svg https://travis-ci.org/wilfredinni/do-pack.svg?branch=master https://requires.io/github/wilfredinni/do-pack/requirements.svg?branch=master https://api.codacy.com/project/badge/Grade/33ea81ba45c64d1199f8b9cd94f11131 https://bettercodehub.com/edge/badge/wilfredinni/do-pack?branch=master http://img.shields.io/badge/license-MIT-green.svg

Install

$ pip install do-pack

Usage

The config command

$ do config

Use it to fill common fields once (if executed twice it will overwrite the previous configuration).

Create a default python project

$ do create <project-name>

Create a project using one of the available templates

$ do create <project-name> -t <template>

-t is the short for –template.

Available templates:

  • flask

  • django

  • pymin (minimal python project)

To use your own template you need to store it in a .json file in your current directory, e.g.:

my_template.json

And use it by:

$ do create my_project -t my_template

A step by step setup for new projects

$ do assistant

This command help you fill:

  • setup.py

  • AUTHORS.rst

  • LICENSE

  • .gitignore with rules for Linux, MacOs, Windows, Python, Visual Studio, VS Code, Sublime Text and Pycharm (made with https://www.gitignore.io/).

Default Folder Structure and Templates

This is the folder structure created when using do create <my_project> and do assistant.

project_folder
├── project
│   ├── __init__.py
│   └── project.py
├── docs
│   └── index.rst
├── tests
│   ├── __init__.py
│   └── project_test.py
├── .gitignore
├── LICENSE
├── README.rst
├── AUTHORS.rst
├── setup.py
├── requirements.txt
└── test-requirements.txt
  • The template system use a .json file in wich the keys are folders and the values are files.

  • Every time a folder is created, the program will automatically enter it. If you need to exit that folder so the next one is placed in the same directory, place a <-- in the files (values) as many times needed.

  • Folders (keys) base and bin are replaced with the project name.

  • project.py is replaced with the project name (e.g. my_project.py).

  • In test_projet.py, project is replaced with the project name (e.g. test_my_project.py)

This is the template for the default folder structure:

{
    "base": [
        "LICENSE",
        "setup.py",
        "README.rst",
        "AUTHORS.rst",
        ".gitignore",
        "requirements.txt",
        "test-requirements.txt",
        "MANIFEST.in"
    ],
    "bin": [
        "project.py",
        "__init__.py",
        "<--"
    ],
    "docs": [
        "index.rst",
        "<--"
    ],
    "tests": [
        "__init__.py",
        "test_project.py",
        "<--"
    ]
}

TODOs

  • Implement --template for the assistant command (75%).

  • Add github username to the config command for the project url.

  • Generate the documentation (sphinx).

Metadata

Release files for do-pack 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for do-pack 0.1.4
File Size Uploaded
do-pack-0.1.4.tar.gz 57.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for do-pack 0.1.4
File Interpreter ABI Platform
do_pack-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 135.4 kB

Release files / do-pack-0.1.4.tar.gz

Download URL do-pack-0.1.4.tar.gz
Size 57.8 kB
Tags Source
SHA-256 checksum
How to use checksums
a5c94b57f5252b99237142a8657a1a54e3d09dd728eeb5f2dc6fbf1cd360bff9
BLAKE2b-256 checksum
How to use checksums
74dd69d32efa4e873180211ee110e05e7f56b01efb2e4fda0c5a8e02a13c973c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / do_pack-0.1.4-py3-none-any.whl

Download URL do_pack-0.1.4-py3-none-any.whl
Size 77.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c1a73aee60921bb6fac08f67e1cda5d2b9368e702943c14d8ab1da2bafbf9742
BLAKE2b-256 checksum
How to use checksums
b7e5a7fe6b62561753c32e11e0ff5337b741a0742010c9210c0dda1d6834955f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.4 This release

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.dev0

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page