Skip to content

mattharrison/poachplate

Repository files navigation

# Copyright (c) 2009 Matt Harrison

Intro
=====

Poachplate is a script for generating python scripts.  Really it just
generates boilerplate content, such as:

* setup.py
* bin/script
* scriptlib/__init__.py
* test/test.py
* README
* LICENSE

Some of the content is just "FILL IN", but this can be fixed by
setting the appropriate values in a ``~/.config/poachplate.ini`` file,
that looks like this::

  [properties]
  author : FILL IN
  email : FILL IN
  version : 0.1

Installation
============

Unpack the tarball and run::

  make dev

This will create a virtual environment ``env`` and run ``python
setup.py develop`` inside of it.

Invocation
==========

Invoke the script (after activating the virtualenv -
``env/bin/activate``) like so::

  poachplate FooBar

And it will create the following "Compromise Layout", where there is a
script but the implementation goes in ``scriptlib/__init__.py`` (or
where you want to put it).  The idea is to have a script in the PATH
that is executable (so people can run it), as well as a package in
PYTHONPATH, so people can import/test/reuse the code.

Here's the layout::

  FooBar/
    INSTALL
    LICENSE
    README
    MANIFEST.in
    setup.py
    bin/
      foobar # small wrapper
    foobarlib/
      __init__.py # put implementation here
      meta.py # version/author/email
    test/
      test.py

Todo
====

* Be verbose during creating, ie: creating "FooBar/"....
* Use templates in files for content
* Fix issues people have
* Add features people want
* Perhaps OT.  Provide a library of common script functions.

Changelog
=========

0.1 - Feb 12, 2009
------------------

Initial release

0.1.4 - June 2, 2009
--------------------

Various bug fixes - Thanks to Chad Harrington

0.1.5 - March 7, 2013

Retweaking, py3 fixes

About

A tool for creating boilerplate for Python command line applications.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages