FabDoc—Portable Version Control System for Makers

Article and images by Kevin Cheng

A head-mounted recorder

Most makers in most makerspaces are willing to share the intricate details of their creations, but this involves a lot of work:

  1. filming the entire process
  2. understanding your target readers
  3. gathering information and writing an article
  4. posting the article on various platforms

This means makers have to put in at least twice as much effort in order to share their knowledge with the rest of the world.If you want readers to understand your work better, you often have to reshoot the whole thing to get the film or photography just right. Often you end up spending an age explaining how the product is made, and the filming itself becomes part of the final product. In fact, most makers write down their process not merely to share the details but also to keep a record for themselves.

The reason is simple: it’s impossible to finish a project in one go. 

In the Taipei Hackerspace two years ago, we started discussing why version control systems only exist in software. Could they be used for software/hardware projects, too? Everybody makes mistakes or finds errors—does that mean we should start recording our projects in discrete steps?

That’s why we started simplifying the recording by incorporating the idea of Git from software distributed version control, and dividing it into two types: device (hardware) and console (software)


This is mainly for Raspberry Pi and camera modules. By affixing the camera to a pair of goggles with a portable battery, and then following a script while the camera takes regular snap shots, you can automatically upload time-lapse images to the experimental web app in real time, without having to put down your work just to take photos. 

We recently installed a Raspberry Pi on a climbing helmet, which has a 18650 battery that can power the device. 

Automatically recording everything you do!


The above-mentioned web app is currently only an experimental platform. 

The initial plan is to use QR codes to verify the hardware on the software server; the photos will then be transferred to your browser in real time. The time-lapse photos synced to your browser, e.g. at five-second intervals, are “pre-commit”, which means that you can choose which key steps to keep once the day’s work is done (much like a Git commit). The files will then be uploaded to the database (much like a Git push). 

This project is still under development and is MIT licensed. For further information, follow the links below.



The share account of vmaker editors. Send your work to us:contact@vmaker.tw