Skip to main content

A simple template tool to create the skeleton for a python project

Project description

skelpy is a simple template tool to create the directory structure for python projects. In addition to creating basic directories for a project, skelpy generates several configuration files for widely-used tools. Those include:

  • setup.py and setup.cfg for setuptools

  • conf.py, index.rst for sphinx documentation

For the complete directory structure and files for skelpy to create, see quick_start

Features

OS Independent

skelpy supports Linux, Windows, OSX and Cygwin.

No Dependency

skelpy was written in pure python and requires no extra library or module unless you want to run the test codes of skelpy yourself. In that case, you will need pytest and mock (only if you use python 2.7 and 3.3 downward)

Support python 2.7 and 3.x

skelpy works well on python 2.7 and 3.x.

Install

From PyPi

On the command line, just type either of belows:

pip install skelpy
or
pip install --user skelpy

The first one is for system-wide installation and you may need the administrator /root privilege. The second command will install skelpy in the user’s python install directory, which is ~/.local/ on linux and Mac, %APPDATA%Python on Windows.

From Git

Another option is to download skelpy’s source codes using git and to build an executable zip file. skelpy’s setup.py can build the zip-formatted executable. To do that, run the command below in order:

$ git clone https://github.com/june3474/skelpy.git
$ cd skelpy
$ python setup.py ezip

Now you will be able to find an excutable zip file named skelpy.zip in the dist directory . Once got the zip file–changing the name of the zip file is OK–, you can directly run the zip file as if it were a python module like below:

python skelpy.zip [options_for_skelpy] [project_name_to_create]

Or, if you use Linux or any POSIX-compatible OS, you can make the zip file an executable:

$ echo '#!/usr/bin/env python' > skelpy
$ cat skelpy-master.zip >> skelpy
$ chmod u+x skelpy

Codes above are from “The Hitchhiker’s Guide to Python” by Kenneth Reitz and Tanya Schlusser.

Quick Start

To start a new project, say ‘my_project’, just type on the command line

skelpy my_project

This will create a new folder my_project under the current directory and fill the directory with sub-directories and configuration files like below:

'basic' format(default)                   'src' format

my_project/                               my_project/
├── docs/                                 ├── docs/
│   ├── _build/                           │   ├── _build/
│   ├── _static/                          │   ├── _static/
│   ├── _templates/                       │   ├── _templates/
│   ├── conf.py                           │   ├── conf.py
│   ├── index.rst                         │   ├── index.rst
│   ├── make.bat                          │   ├── make.bat
│   └── Makefile                          │   └── Makefile
├── my_project/                           ├── src/
│   ├── __init__.py                       │   └── my_project/
│   └── main.py                           │       ├── __init__.py
├── tests/                                │       └── main.py
│    └── test_main.py                     ├── tests/
├── LICENSE                               │    └── test_main.py
├── README.rst                            ├── LICENSE
├── setup.cfg                             ├── README.rst
└── setup.py                              ├── setup.cfg
                                          └── setup.py

You can choose which tructure to use with the --format/-f option. Also, if you do not provide the project name, skelpy will consider the current directory name(the last component of the current working directory) to be the project name.

For more options, See skelpy -h

License

skelpy is under the MIT license.

Author

dks <june3474@gmail.com>

Change Log

## [1.0.rc0] - 2019-04-13

## [1.0.0] - 2019-05-31

Reference

Reference is available at https://june3474.github.io/skelpy/api/modules.html

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

skelpy-1.0.0.tar.gz (62.8 kB view details)

Uploaded Source

Built Distribution

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

skelpy-1.0.0-py2.py3-none-any.whl (82.1 kB view details)

Uploaded Python 2Python 3

File details

Details for the file skelpy-1.0.0.tar.gz.

File metadata

  • Download URL: skelpy-1.0.0.tar.gz
  • Upload date:
  • Size: 62.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.1.0 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.5.5

File hashes

Hashes for skelpy-1.0.0.tar.gz
Algorithm Hash digest
SHA256 c73899f33871fab6c4950fd046aaa3f5de26c4d6795ab54c307103b57fbd3716
MD5 86c21cdbf5928194a42bba090e44e4a2
BLAKE2b-256 f033ae6383694c9630e44ed3a52b798ccd6ac65aadcc837089a9c7f4feae724e

See more details on using hashes here.

File details

Details for the file skelpy-1.0.0-py2.py3-none-any.whl.

File metadata

  • Download URL: skelpy-1.0.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 82.1 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.1.0 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.5.5

File hashes

Hashes for skelpy-1.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 3023878023d1a72376af2237b9d251d8c1609dd5e50c0f2367ee75ff8c92360f
MD5 d41d96b2de67feaabef2e41ad9dd1187
BLAKE2b-256 8ba5facfafe32c1da459ce21948846abeeaa4c802cf031e2abb44547d5471cd1

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