Skip to content
Go to file


Failed to load latest commit information.
Latest commit message
Commit time

README.rst Coveralls Latest Version Egg Status

License Gitter channel


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


With the plonecli, we have a nice commandline client for bobtemplates.plone. We highly recommend to use the plonecli, because it adds auto completion and some nice helpers to bobtemplates.plone.


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 (Deprecated, use theme_barceloneta subtemplate)
  • buildout (useful setup a development buildout or to test new pending Plone versions)

Provided subtemplates

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

  • behavior
  • content_type
  • indexer
  • portlet
  • restapi_service
  • subscriber
  • theme
  • theme_barceloneta
  • upgrade_step
  • view
  • viewlet
  • vocabulary


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.


Please note that the theme templates by default only work for Plone > 5, because they are based on Barceloneta. But they can be use for older version too, with some changes to the rules file.


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


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

Installation with pip global for a user

pip install bobtemplates.plone --user

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

parts += mrbob

recipe = zc.recipe.egg
eggs =

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


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/

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/

This will create your Plone package inside the src directory.

See the documentation of mr.bob for further information.


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

Here is an example:

verbose = False

[variables] = Maik Derstappen =
author.github.user = MrTango
plone.version = 5.1.3-pending
#package.git.init = y
#package.git.autocommit = n
#package.git.disabled = n

dexterity_type_global_allow = n
dexterity_type_filter_content_types = y
dexterity_type_activate_default_behaviors = n
dexterity_type_supermodel = n



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

You can’t perform that action at this time.