Take back control with
Platform as Code

MultiTool lets engineering teams  create the perfect platform for their application’s needs.
Join the waitlist

Design your ideal deployment workflow

MultiTool uses a type-safe, compiled language to describe your workflows, allowing you to use abstractions to build your ideal platform. Need to get started quickly instead? Just use MultiTool’s reference architectures.

Provision automatically

The platform-as-code approach seamlessly connects new services to your application. Need to add a cache? Just import a Redis provider and the infrastructure will be provisioned automatically.

Deploy faster

Deploying with Bash or Make? Remove brittle shell scripts from your deployment pipeline by using structured code to:
Improve deployment robustness
Cut iteration time
Make developers happier

Safeguard release

Leverage release strategies like rolling, canary, and blue-green deployment. Rollback with one command if you’re not happy with the deploy.

Deployments, simplified

Building block icon
Cloud icon
Computer chip icon
Database icon
Load balancer icon

Choose yourInfrastructure

1
Cloud icon
Database icon
Shield icon
Shield icon
Computer chip icon
Building block icon
Load balancer icon
GitOps logo
Amazon SQS logo
Jenkins logo
Helm logo
Zero MQ logo

Choose yourDeployment mechanism

2
Serverless logo
Travis logo
Open FaaS logo
GitHub logo
Argo logo
AWS Lambda logo
Circle CI logo

Release

Built for developers, by developers

MultiTool's custom deployment language orchestrates your process—from build to release.

Expressive and simple to read
Version controlled with your existing tooling
Run locally or as part of your CI/CD pipeline
deploy.tool
use docker; 

fn main(environment: Env) { 
let image = docker.build("Dockerfile"); 

let image_id = environment
.registry("multitool/my-registry")
.push(image); 

environment
.ecs("my-cluster")
.deploy_task(image_id); 
}

Work alongside all the tools in your toolbox