Categorygithub.com/apex/up
modulepackage
1.7.1
Repository: https://github.com/apex/up.git
Documentation: pkg.go.dev

# README

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.

About

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.

Open source edition features

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.

Pro edition features

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')
}).listen(process.env.PORT)

Deploy the app:

$ up

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

$ up url -o
$ up url -c

# Packages

No description provided by the author
Package config provides configuration structures, validation, and defaulting for up.json config.
Package handler provides what is essentially the core of Up's reverse proxy, complete with all middleware for handling logging, redirectcs, static file serving and so on.
No description provided by the author
No description provided by the author
No description provided by the author

# Functions

New project.

# Variables

MustParseConfigString returns config from JSON string.
ParseConfigString returns config from JSON string.
ReadConfig reads the configuration from `path`.

# Structs

Deploy config.
Domain is a domain name and its availability.
DomainContact is the domain name contact information required for registration.
LogsConfig is configuration for viewing logs.
Project manager.

# Interfaces

Domains is the interface for purchasing and managing domains names.
Logs is the interface for viewing platform logs.
Platform is the interface for platform integration, defining the basic set of functionality required for Up applications.
Pruner is the interface used to prune old versions and the artifacts associated such as S3 zip files for Lambda.
Runtime is the interface used by a platform to support runtime operations such as initializing environment variables from remote storage.
Zipper is the interface used by platforms which utilize zips for delivery of deployments.

# Type aliases

Config for a project.