You code.

We do the rest.

Deploy your app in seconds with one command without any change to your existing codebase.

Let our platform take care of operations, scaling your application and keeping it up & running.

Stop worrying about Ops. Forever.

Whenever you built something new, you need the same things all over again. Monitoring, CI pipelines, auth, a new domain name – don't worry, we got you.

  • Keep your existing HTTP Go service, static site or SPA
  • Use the free subdomain provided by us or bring your own
  • Keep control over who may access your service using RBAC
  • Monitor logs, run different service versions or scale up
Deploy your app in 4 steps. Or 30 seconds.
1 Install the Valar CLI
brew install valar/tap/valar

Feel free to look into the source code on GitHub and build the client from source.

2 Tell Valar about your code
valar init --type=go helloworld

If you don't want to code right now, we recommend the example in our docs.

3 Push it and watch it go live
valar push

Your service is now running on solid, resilient infrastructure. It scales automatically plus you don't have to worry about logs, regional resilience or ridiculous egress pricing.

4 Explore the stack
valar help

Our CLI has more to offer than just push. You can stream logs, link services, manage access rights, invite your team members and more. It's even open-source.

How it works. Apart magic.

It all revolves around our agent, which is a FaaS-optimized container runtime on top of gVisor [a secure process environment built by Google for App Engine]. When you push a new version of your service, we start packaging it up and output an artifact using an approach similar to Buildpacks. We then distribute the assets to the agents in our network, while our scheduler figures out which agents should take care of handling requests. When an HTTP request comes in, we start [or unpause or un-checkpoint] your executable in our agent and forward your request. As soon as the HTTP request is finished or times out, your executable is destined to go back to sleep again.

This way we can make sure that we achieve low resource usage [so we can run a lot of your services with low resource requirements] and horizontal scalability [so we can handle bursts of requests] and high reliability [so your service never goes down].