Today, we are thrilled to announce our most exciting feature yet: Automatic build configuration. Let's have a look at what problem this solves and how it will make your workflow (and life) more enjoyable.

Naturally, build commands are an integral part of any deployment pipeline. Our build system allows users to run any command in an isolated container during the deployment process, before sending the files off to their remote server.

Example of a simple build setup for a Laravel application with front-end assets

And we didn't stop there - our per-command caching engine allows our users to reduce the build times of common procedures such as npm install or npm run build by as much as 95% (you can find out exactly how it works and how to use it in your own projects through the in-app docs).

Example of the same build commands as shown above, but with caching enabled

While extremely powerful, setting this up wasn't exactly easy or self-explanatory. Besides the fact that the configuration is rather verbose, and defining it by hand requires somewhat of a learning curve, there are various subtleties to the way some commands behave in a CI environment that are easily overlooked. An example of this is the --ignore-platform-reqs flag for composer, often times a necessity when builds run in an environment that differs from the production server. All things considered, manually setting up a build configuration can be quite tedious.

This is where our new automatic build configuration feature come in. Our system will look at what's in a repository and based on the presence and contents of various key files such as package.json and composer.json, automatically provide a customized build configuration to suit your project - just at the click of a button!

Generate a build configuration for your project in a matter of seconds

Right now, our system can detect and suggest the appropriate configuration for generic build tools like composer, yarn, npm and will fine-tune for specific frameworks like Laravel, WordPress, roots/bedrock and more. Feel free to drop us a message if you'd like to see anything specific supported as we'll be happy to add it!

Most of our users will be fine with the standardized configuration automatically provided for whatever framework or tools our system encounters in the user's repository. Some users might want to use the automatically generated configuration as a starting point, then build from there. Others might want to start from scratch and type up their own.

Ready to try it for yourself? Log into your control panel or use the button below if you don't have an account yet:

Our philosophy at Launchdeck is to make powerful tools that are easy and intuitive to use - abstracting away as much complexity as possible from the high-level user experience, while still allowing full power to review and modify any part of the configuration for those of our users who demand it.

The build command step of our project set-up workflow had previously been one difficult to fully reconcile with this philosophy. With the new automatic build configuration feature, one of the trickiest parts of the project set-up has now become a breeze.

We're especially proud of this feature and very excited to finally be able to share it with our users. Let us know what you think!

A little bit about the author
Co-founder of Launchdeck - Node.js & Docker enthusiast.