💅🏽 Makeup
A local development tool to replace Docker Compose, based on Make.
Makeup uses Makefiles to create a faster development workflow for microservices (when compared to Docker and docker-compose). It uses locally installed tools and a version-checking mechanism to get reasonably repeatable builds, and configures + runs things (like multiple microservices) in parallel, a la docker-compose.
The makeup command builds all of the components of your application and runs them together without needing containers.
To use makeup, you'll create:
- The
main.mk file (which includes tool version checks).
- Individual component
.mk files (with build, run, test, env, and clean targets).
- Optional autogenerated
Makefile, which allows anyone who isn't using makeup to build and run your project just as easily (by running make up).
The makeup tool is required to get started (and to get the best experience), but not required for anyone else to use your project (which might be the best part).
✨ Check out the full usage instructions ✨
Commands
Implemented:
makeup: builds each component sequentially, and then runs your entire project
makeup test : tests each component sequentially
makeup clean : cleans each of the components in the project
In progress:
makeup generate : generates the main Makefile for anyone to use.
Here's an example (from this repo!):
That's it for now.
Copyright Connor Hicks and external contributors, 2023. Apache-2.0 licensed, see LICENSE file.