The frictionless WebAssembly platform for writing microservices and web apps

With Fermyon, you can deploy your Spin applications onto a server in moments. For developers, it offers a rapid self-service cloud application platform (or Platform-as-a-Service). For DevOps, Fermyon provides orchestration, networking, service discovery, and a web UI for Spin applications.

For Developers

For the developer, Fermyon works like a cloud application platform or PaaS (think CloudFoundry or Heroku, but for Spin apps). With just a few commands, a developer can go from a blinking cursor to a deployed application:

  • Use spin new to create a new application
  • Then spin build to locally build it
  • Finally, use spin deploy to deploy it to Fermyon

The Fermyon dashboard, a web app, makes it easy to configure your app, choose a channel (dev, stage, prod), and check the status and logs.

Fermyon offers all of the perks of a deployment platform, including a web UI. But if you are just doing local development, you can use spin up and spin build --up to run your app locally.

The Spin quickstart will get you going with Spin. Read on if you want to install Fermyon on a server or in the cloud.

For DevOps

From the DevOps perspective, Fermyon provides the clustering, orchestration, service discovery, package management, HTTP proxy, and web UI.

  • Fermyon uses the Nomad scheduler to schedule Spin applications across a cluster.
  • Along with Nomad, Fermyon uses Consul for service discovery
  • Fermyon runs a Bindle server to provide package management in the Spin data plane.
  • HTTP proxying is provided by Traefik
  • And the web UI for Spin is provided by Hippo

While the Fermyon installer creates a single-node cluster, you can scale up Nomad to as many workers as you would like. Future versions of the AWS installer will likely support more complex roll-outs.

Installing Fermyon

Fermyon can be installed in one of two ways:

Don’t want to install Fermyon on your own account? Soon we’ll have a hosted version of Fermyon. Sign up to be notified when we launch.