Skip to main content

For documenting hardware projects with minimal effort, so you can stop writing and git building.

Project description

What is Git-Building

The goal of Git-Building is to give you the freedom to write instructions in the form and structure that you want using markdown. Some extra syntax is added to generate the difficult things like bills of materials.

In Git-Building you are able to:

  • Write the instructions as you go along in markdown
  • Tag links in the code with meta-data to show if they are steps in the build or parts that are needed
  • Define a library including the part numbers for multiple suppliers
  • Syntax for adding in bill of materials

Note: While we work out the best syntax, major things might change! If you have syntax suggestions please raise an issue!

Basic example:

# Making a widget

## You will need

## Method
Take two [M6x10 cap screws]({Qty: 2} and screw them into the bottom of the [widget base]({Qty:1} using a [5mm ball driver]{Qty: 1}. 1}.

[5mm ball driver]: "{cat: Tool}"

Screw two more [M6x10 cap screws]{Qty: 2} into the top of the [widget base] the [same ball driver][5mm ball driver]{Qty: 1}.

Will evaluate to

Making a widget

You will need




Take two M6x10 cap screws and screw them into the bottom of the widget base using a 5mm ball driver.

Screw two more M6x10 cap screws into the top of the widget base the same ball driver.

A full example is available.

How to install Git-Building

To install (for Python 3.6+)

pip install gitbuilding

Note: If you installed python from the Windows app store Git-Building will not work as intended. If you are on windows you should install python or Anaconda. During install make sure you select the box to add python to your PATH

If you wish to contribute to development of Git-Building you can clone the project like normal but you may need to build the javascript editor from source. To do so please see the dedicated building/contributing page

Using Git-Building

A Git-Building project can be as simple as a folder with some markdown files in it. To add extra information into these files to allow a bill of materials to be generated we use a syntax we call BuildUp. Git-Building will then process the BuildUp and export the result it in either a plain markdown format

When specifying parts in BuildUp they can have their own BuildUp page, or can be part of a BuildUp part library in YAML format.

It is possible to customise how Git-Building builds the Buildup into plain markdown or HTML by making a configuration file called buildconf.yaml.

Running the Git-Building software

All the commands below assume you have successfully installed gitbuilding with pip.

Starting a new empty project

Open your terminal in an empty folder you want to use for your documentation and run

gitbuilding new

empty documentation files will be added to the directory.

Building the documentation

Open your terminal and run

gitbuilding build

this will build your the documentation in your folder assuming you have a valid buildconf.yaml file (see below).

Previewing the documentation or use the live editor

Open your terminal and run

gitbuilding serve

and then open a browser and navigate to http://localhost:6178/. This will show the documentation in a browseable form. You can also edit the documentation directly from your browser:

Build a static-html site

Once you have built the documentation with gitbuilding build you can convert this into html with

gitbuilding build-html

Getting help

You can get more detail on the command line options by running

gitbuilding help

You can get help for a specific command with

gitbuilding help <command>

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for gitbuilding, version 0.3.0
Filename, size File type Python version Upload date Hashes
Filename, size gitbuilding-0.3.0-py3-none-any.whl (552.9 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size gitbuilding-0.3.0.tar.gz (534.8 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page