Skip to content

Getting started

Brand new (Python) project

Makester tooling can provide scaffolding for common components of a coding project. Begin by assigning your new project name to the MAKESTER__PROJECT_NAME environment variable. The following example uses the project name supa-idea:

export MAKESTER__PROJECT_NAME=supa-idea

Prime your new project repository:

mkdir $MAKESTER__PROJECT_NAME && cd $_ && git init && git commit -m "initial commit" --allow-empty

Add Makester as a submodule in your git project repository:

git submodule add https://github.com/loum/makester.git

Note

Some versions of git submodule add will only fetch the submodule folder without any content. For first time initialisation (pull the submodule):

git submodule update --init --recursive

The -i switch will also install the Makester tooling that will be used in the following steps.

Create the Python project directory layout

Let Makester prepare your Python project boilerplate, by initialising with the -a switch:

Initialise Python project boilerplate.
makester/resources/scripts/primer.sh -a

What just happened?

Makester takes care of the of the Python project scaffolding for you. You now have the basic boilerplate for a new Python coding project and can start work immediately on your problem domain. This includes:

Existing project

If you already have a Makefile, then just include Makester:

include makester/makefiles/makester.mk

Run the primer script to build a minimal Makefile:

makester/resources/scripts/primer.sh -i

Maintenance

To get the latest Makester release:

resources/scripts/primer.sh -u

Note

Prior to Makester v0.2.6 you will first need to sync the Makester git submodule:

make submodule-update

Minimal mode

In certain circumstances, you may only need a limited subset of Makester capability. It is possible to include only the Makester Makefiles that you need with the MAKESTER__INCLUDES environment variable. For example, to limit Makester to Python tooling, set MAKESTER__INCLUDES as follows:

Makester minimal mode.
MAKESTER__INCLUDES=py

To make the settings persist, add the expression to your project's Makefile before the include makefiles/makester.mk call:

Project Makefile in minimal mode.
.SILENT:
.DEFAULT_GOAL := help

MAKESTER__INCLUDES := py

include makefiles/makester.mk

help: makester-help
    @echo "(Makefile)\n"

top