Skip to main content

package to create file structure when making your own package.

Project description

CreatePackage

Python package which creates the filestructure, basic readme, setup.py with dependencies provided on your requirements file, code blocks with class and function templates with doc strings.

Prerequisites

  • MakeTreeDir

    Python package to easily create complex directory structures.

    https://github.com/Sreekiranar/MakeTreeDir.git

    from MakeTreeDir import MAKETREEDIR
    md=MAKETREEDIR()
    md.makedir('this/is/a/testing/package/creation')
    
    ### Corner cases
    md.makedir('/media/username/New Volume/folderName')
    md.makedir('../../../folderName')
    md.makedir('C:\\Users\\userName\\folderName')
    

Installation

You can easily install the package by

pip install createPackage

Running the tests

If you have to create a package with the following setup:

  • Package Name: demoPackage
  • code Blocks:
    • demoBlock1
    • demoBlock2
  • dependencies: contained inside a requirements.txt in this structure : library1==0.1.0 or library2

After installing createPackage ,

from createPackage import createPackage
packageName='demoPackage'
codeBlocks=['demoBlock1','demoBlock2']
requirements='path/to/requirements.txt'
##init class
cp=createPackage(packageName,codeBlocks,requirements)

##call main function
cp.pythonPackage()

This will create the following folder structure.

demoPackage
│   README.md
│   setup.py
│
└───demoPackage
│   │   __init__.py
│   │   demoBlock1.py
│   │   demoBlock2.py
  • demoBlock1.py and demoBlock2.py will have basic class structure and doc strings to be filled and modifed by the user. It will also be included in the init.py

  • setup.py will have all the dependencies from the requirements.txt mentioned like shown below:

    from setuptools import setup
    
    with open('README.md','r') as f:
        long_description = f.read()
    
    
    setup(name='demoPackage',
          version='0.1',
          description='enter the package description',
          long_description=long_description,
          long_description_content_type="text/markdown",
          url='enter the url',
          authors='author',
          author_email='emailid',
          license='MIT',
          packages=['demoPackage'],
          install_requires=['library1==0.1.0','library2'], include_package_data=True,
          zip_safe=False)
    
  • There will a standard README.md template which can be filled accordingly.

Authors

  • Sreekiran A R - Analytics Consultant, AI Labs, Bridgei2i Analytics Solutions - Github , Stackoverflow

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Project details


Release history Release notifications

This version

1.0

Download files

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

Files for createPackage, version 1.0
Filename, size File type Python version Upload date Hashes
Filename, size createPackage-1.0.tar.gz (4.0 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page