Development

For Epaster (or its pastes) development, you will need to install the Epaster repository, then use the development environnment :

git clone https://github.com/emencia/Epaster.git
make install
source bin/activate
buildout -c development.cfg

It will requires that you have installed the GIT client because the development environnment installs the pastes sources in the src/ directory. This is where you will work.

Documentation

The documentation sources lives in the docs/ as a Sphinx project, Sphinx is installed within the development environnment.

Note that for each paste the mods documentation is automatically builded from the paste. For example with the emencia_paste_djangocms_3 paste, a docs/emencia_paste_djangocms_3.rst file is builded from its source code.

The paste’s mods documentation is not builded from the common make html Sphinx command, but with the dedicated command : make grab.

The grab action will take it’s base document from project/mods_available/__init__.py docstring then replace the directive .. document-mods:: with the grabbed mods documentation.

The grabbed mods documentation itself is taken from each mod living in project/mods_available/ using their __init__.py docstring, then they are assembled as an unique string that will replace the .. document-mods:: directive.

Beware that all these __init__.py docstrings must be valid RST syntax else it will break the documentation building.

Finally to ease the documentation building, when you did lot of changes in the mods documentation, just use the following command to rebuild their docs then build the whole project documentation :

make all

This command assemble the make grab and make html commands.

Foundation updates

Warning

To do this, you must have a strong knowing of Foundation sources structure

You only have to do this when you want to synchronize the project’s Foundation sources from the latest Foundation release. This is reserved for Epaster maintainers.

This project embeds Foundation 5 sources installed from the Foundation app so you can update it from the sources if needed (and if you have installed the Foundation cli, see its documentation for more details). to update these sources go into its directory and use it Makefile action:

make update

Warning

Never manually put your files in the project/webapp_statics/js/foundation5 directory or they will be deleted.

Then you have to checkup that directories structure has not changed, if it so you must fix the syncf5 and syncjquery actions. When it’s done, do:

make syncf5

For the SCSS sources, no action is required; they are imported directly into the compass config.