Deploy infinitely scalable serverless apps, apis, and sites in seconds to AWS.
Under MIT License
By apex

microservices nodejs golang aws aws-infrastructure lambda aws-lambda api microservice http graphql serverless api-gateway deployment heroku static up deploy-tool

Up deploys infinitely scalable serverless apps, APIs, and static websites in seconds, so you can get back to working on what makes your product unique.

With Up there's no need to worry about managing or scaling machines, paying for idle servers, worrying about logging infrastructure or alerting. Just deploy your app with $ up and you're done!

Use the free OSS version, or subscribe to Up Pro for a small monthly fee for unlimited use within your company, there is no additional cost per team-member or application. Deploy dozens or even hundreds of applications for pennies thanks to AWS Lambda's cost effective nature.


Up focuses on deploying "vanilla" HTTP servers so there's nothing new to learn, just develop with your favorite existing frameworks such as Express, Koa, Django, Golang net/http or others.

Up currently supports Node.js, Golang, Python, Java, Crystal, Clojure and static sites out of the box. Up is platform-agnostic, supporting AWS Lambda and API Gateway as the first targets. You can think of Up as self-hosted Heroku style user experience for a fraction of the price, with the security, isolation, flexibility, and scalability of AWS.

Check out the documentation for more instructions and links, or try one of the examples, or chat with us in Slack.

OSS Features

Features of the free open-source edition.

Pro Features

Up Pro provides additional features for production-ready applications such as encrypted environment variables, error alerting, unlimited team members, unlimited applications, priority email support, and global deployments for $19.99/mo USD. Visit Subscribing to Up Pro to get started.

Quick Start

Install Up:

$ curl -sf https://up.apex.sh/install | sh

Create an app.js file:

require('http').createServer((req, res) => {
res.end('Hello World\n')

Deploy the app:

$ up

Open it in the browser, or copy the url to your clipboard:

$ up url -o
$ up url -c