Python Code Templates for Plone Projects with mr.bob

README.rst

https://secure.travis-ci.org/plone/bobtemplates.plone.png?branch=master Coveralls Latest Version Egg Status License Gitter channel

bobtemplates.plone

bobtemplates.plone provides mr.bob templates to generate packages for Plone projects.

Note: bobtemplates.plone supports plonecli, which is the recommended way of creating Plone packages.

Features

Package created with bobtemplates.plone use the current best-practices when creating an add-on. It also support's GIT by default, to keep track of changes one is doing with the bobtemplates.

Provided templates

  • addon
  • theme_package
  • buildout

Provided subtemplates

These templates are meant to be used inside a package which was created by the addon template.

  • behavior
  • content_type
  • theme
  • view
  • viewlet
  • vocabulary

Compatibility

Add-ons created with bobtemplates.plone are tested to work in Plone 4.3.x and Plone 5. They should also work with older versions but that was not tested. It should work on Linux, Mac and Windows.

Documentation

Full documentation for end users and template developers can be found in the "docs" folder.

For easy usage see: plonecli

It is also available online at http://docs.plone.org/develop/addons/bobtemplates.plone/docs/

Installation

You can install bobtemplates.plone as every other normal Python package with pip inside a virtuelenv or better with pipenv.

Installion with pipenv

pipenv install bobtemplates.plone

Installation with pip in a virtualenv

You can also install bobtemplates.plone with pip in a virtualenv. If you don't have an active virtualenv, you can create one inside your project directory.

virtualenv .

Then either activate the virtualenv:

source ./bin/activate

or just use the binaries directly inside the bin folder as below:

./bin/pip install bobtemplates.plone

Use in a buildout

[buildout]
parts += mrbob

[mrbob]
recipe = zc.recipe.egg
eggs =
    mr.bob
    bobtemplates.plone

This creates a mrbob-executable in your bin-directory.

Usage

As bobtemplates.plone is a template for mr.bob, we use mrbob to run the templates.

If you are using buildout or an unactivated virtualenv, you can use mrbob like this:

./bin/mrbob bobtemplates.plone:addon -O src/collective.foo

If you are using pipenv or an activated virtualenv, you can use mrbob like this:

Activate pipenv shell:

pipenv shell

or activate your virtualenv:

source bin/activate
mrbob bobtemplates.plone:addon -O src/collective.foo

This will create your Plone package inside the src directory.

See the documentation of mr.bob for further information.

Configuration

You can set all mr.bob configuration parameters in your ~/.mrbob file.

Here is an example:

[mr.bob]
verbose = False

[variables]
author.name = Maik Derstappen
author.email = md@derico.de
author.github.user = MrTango
plone.version = 5.1-latest
package.git.init = True
package.git.autocommit = True
package.git.disabled = False

Contribute

Support

If you are having issues, please let us know. We have a Gitter channel here: plone/bobtemplates.plone