Skip to content

Introduction ​

BuildBox main key concepts are projects, targets, packages and tools.

A project stands for deliverable components, and the way to build them. It is composed of one or several targets, which define the platform of a deliverable, including build, test and distribution methods. Targets embed packages, which are software components built for them. And tools are used by targets and involved in the build, test and distribution to release the deliverable.

Organisation of a BuildBox project A project holds one or several targets. Each target embeds the packages built for it, and every target uses the tools, which are installed once and shared. PROJECT my_project/ profile versioned in .bbx/ deliverable components, and the way to build them TARGET target1 platform, build, test and delivery .bbx/target.target1 builds into target1/build TARGET target2 another platform, same project .bbx/target.target2 builds into target2/build used by TOOLS tools/ prebuilt, installed once, shared tool1 @1.4 tool2 @2.0 PACKAGES .bbx/packages/ package1 @main package2 @1.2.3 PACKAGES package1 @main package3 @dev

BuildBox is used through the bbx command, directly from a project directory. It works like any other command-line tool: no shell to enter, no workspace to configure. Please run bbx --help to get a complete list of supported commands.

For day-to-day use, the cheat sheet presents the usual commands simply and clearly, on a single page.

WARNING

BuildBox commands are not meant to be used from shell scripts if you need to deal with output data. Indeed, output format is not fixed for BuildBox commands as they are to be used by humans. So, if you have to deal with BuildBox from scripts and need to parse output data, consider using BuildBox API.