Introduction to Build Systems

Sahu
9 min readMar 19, 2023

What are few of the things that happen pretty frequently in a project? Continuous Integration checks? Deployment after every pull request merge? Onboarding new members and starting their local setup? Running a code scan? All of these can be simplified with a build System.

Comment: Do you use Build Systems in your projects? And what tooling you found interesting.

A lego pile denoting how projects get chaotic without Build Systems.
Photo by Ryan Quintal on Unsplash — Projects without Build Systems

What is a Build System?

A build system is a program which helps convert your source code into any form of meaningful output that you want to deploy. To make this more generic, it could even work for something that’s not even code. For example, this output could be a PDF for a book, a group of files as a zip or a tarball, an npm package, a docker image, a helm chart to deploy said docker image; anything under the Sun really, as long as a bunch of inputs are properly transformed into a meaningful output.

Apart from this, a Build System also helps automate many other tasks for your project – running your app locally, linting or testing your code, generating a documentation site from a set of static markdown files, periodically cleaning up left-out branches from your git repository, etc.,.

Why do you need a Build System?

--

--

Sahu
Sahu

Written by Sahu

All opinions shared are personal and not influenced by my Employer • Senior Software Engineer @ McKinsey & Company

No responses yet