App hosting

Host your app, deployed straight from GitHub

Node.js, Python, Bun, Deno, Go, Java, PHP, Ruby, Rust, C# (.NET) and static sites. Point us at a repository and we install it, run it and keep it running. Every push ships the new version, any push can be rolled back, and the app can answer at https://name.fadehost.app. Your first app is free.

  • First app free, no card
  • Always on, no sleep timer
  • Nine runtimes, detected for you
  • Four regions, Singapore included
status-pageRunning
  1. Push receivedmain · 4f2a9c1 · “show sleeping servers too”
  2. BuildNode.js 22 detected · npm ci · 38 s
  3. Startnode index.js · listening on PORT
  4. Livehttps://status-page.fadehost.app
12:04:11Cloning github.com/you/status-page (main)
12:04:13Runtime: Node.js 22 (package-lock.json found)
12:04:14npm ci: added 143 packages in 21 s
12:04:49Build finished. Starting app
12:04:50> node index.js
12:04:51Listening on port 8080
12:04:51Address ready: https://status-page.fadehost.app
12:05:20GET / 200 14 ms
 

What you can host

Anything that is a repository and a process. It runs day and night on the same account as your game servers, bots and databases.

Dashboards

A control panel for your bot, your community or your staff, on its own address with HTTPS.

APIs and webhooks

A small API for your plugin or site, or an endpoint that catches webhooks from somewhere else.

Bots and workers

A Discord, Telegram or WhatsApp bot, a queue worker, a scraper, a job on a loop. No address needed.

Status pages

A page your players check to see whether the server is up, who is on and what changed.

Live in three steps

  1. 1

    Point us at a repository

    Public or private. The FadeHost GitHub App connects it in one click, or paste the URL and a token. No repository? Pick a ready-made app and fill in a field.

  2. 2

    We build and run it

    We read the repository, pick the runtime, install the dependencies, run your build if there is one and start the app. Paid apps can build a Dockerfile instead.

  3. 3

    Push to ship

    Every push redeploys. Watch it in the live console, see the commit that is live, and roll back to any earlier one in one click.

The one thing your app has to do

Listen on the port we hand it. Everything else, the address, the certificate and the routing, is ours.

import express from "express"

const app = express()
app.get("/", (req, res) => res.send("online"))

app.listen(process.env.PORT ?? 3000)

Python, Go, Java and the rest read the same PORT variable. Files you want to keep go under /data.

Command line

From your terminal

The fadehost command does what the app page does: create an app from a repository, deploy, restart, tail the console, read and write environment variables. You sign in once with a code you approve in the panel, and you can revoke it there whenever you like. Node 20 or newer, and nothing to install if you run it with npx.

Read the CLI docs
npx fadehost login
npx fadehost apps create --repo <url>

Then deploy, logs, restart and env on the same app, and mcp install to hand it to an AI assistant.

What we run

We read the repository and pick the runtime from what is in it. You can set it yourself, and set your own build and start commands, at any time.

Node.js

package.json, the lockfile picks npm, pnpm, yarn or bun

Express, Fastify, discord.js, Next.js. TypeScript builds before it starts.

Python

requirements.txt, pyproject.toml or Pipfile

Flask, FastAPI, discord.py and anything else, installed then started with your command.

Bun

bun.lock or a packageManager pin

Installed with bun, started with your start script.

Deno

deno.json

Your start task, or the entry file with the permissions it needs. Modules cached between deploys.

Go

go.mod

The main package built into a binary, modules and builds cached between deploys.

Java

pom.xml, build.gradle or a jar at the root

Maven or Gradle with the wrapper if you ship one; a committed jar runs as it is. Java 21.

PHP

composer.json

Composer installs, the app serves from public/ or the root. Small sites, APIs, webhooks.

Ruby

Gemfile

bundle install, then your start command or rackup. Ruby 3.4.

Rust

Cargo.toml

A release build of the crate, with the crates and the build cached between deploys. Rust 1.99.

C# (.NET)

a .csproj, .fsproj or .sln

dotnet restore, then a Release publish the dotnet host runs. .NET 10, C# or F#.

Static sites

index.html or a build output

Astro, Vite, Eleventy or a Next.js export, served with the right headers and a single-page fallback.

What every app gets

The panel around the app, not a bare container. Everything below is on the app's page.

Push to deploy

Connect the GitHub App once and every push to your branch ships the new version. No SSH, no restart button.

Deploy history and rollback

Every deploy is listed with its commit. Roll back pins the app to an older one and redeploys it; unpin when the fix is in.

Live console

Everything your app prints lands in the panel as it happens, on the app's page, with the build output above it.

Crash doctor

If the app dies in a loop we read the logs and tell you the cause and the fix in plain words, usually within a minute.

Environment variables

Keys and tokens live in a table in the panel, values masked. Add a few, save once, the app restarts with them.

Dockerfile and Railpack builds

Paid apps can build into an image on our build box: your Dockerfile, or Railpack when there is none, pushed to a private registry and started in seconds.

One-click database

Paid apps get a MySQL database at no extra cost; PostgreSQL, MongoDB and Redis sit on the same private network. Connection details land in the environment.

Scheduled commands

Run a command inside the app on a cron schedule: a nightly cleanup, a report, a cache warm-up. Ten per app, output kept.

Backups

A daily backup of everything under /data for $1 a month, kept seven days, restored in one click. Take one by hand before a risky change.

Usage chart

CPU and memory over the last 24 hours on the app's page, so an app at its memory limit is obvious before it crashes.

Four regions

Europe West (France), Canada East (Montreal), USA West (Oregon) or Asia Pacific (Singapore). Pick the one your players and your data are closest to.

Always on, locked down

Non-root, read-only filesystem, hard memory and CPU limits, and an automatic restart if the app falls over. No sleep timers.

Web address

A public address for your app

Pick a name, switch it on, and your app answers at https://name.fadehost.app with HTTPS within seconds. No port to open, no tunnel to run, the certificate handled for you. It comes with every app. A free app gets an address that sleeps when nobody is using it and wakes on the next request; a paid app keeps its address awake, at no extra cost.

  • Dashboards, control panels and status pages
  • OAuth redirect URLs and incoming webhooks
  • Rename it or switch it off whenever you like
  • If the app is not listening, the panel says so instead of a blank error

Web apps and workers only: no proxies, tunnels, phishing pages, bulk media or raw TCP services. The terms have the full list.

https://status-page.fadehost.app
Certificate
Issued, renews itself
Live since
4 seconds after the switch
Free tier
Sleeps when idle, wakes on request
Paid tiers
Always on, with the plan

Apps to start from

Open-source apps we build and maintain. Deploy one as it is from the panel, or fork it and make it yours.

Ready-made apps, one click

No repository and no build: pick one from the catalog, name it, deploy. Each runs from the project's official image with its data kept safe.

By framework

What the deploy looks like for the framework you use.

Coming from another platform

What changes when an app moves here from a free tier that ended.

By what it does

The same runtime, written up for the job you came to do.

Bots, by platform

A bot is an app without an address. Each platform has its own page.

Locations

Close to your players on three continents.

Pick the region when you create a server, or move it later from Settings. Same hardware, same panel, same price everywhere.

  • USA WestOregon
  • Canada EastMontreal
  • Europe WestFrance
  • Asia PacificSingapore

Minecraft, other games, bots and apps run in every region.

Pricing

Every plan is a number of apps, and every app gets 1 GB and 1 vCPU. One bill with your game servers. Yearly is ten months for twelve.

Free
$0/mo
1 app
One per verified account
Starter
$2/mo
or $20/yr, 2 months free
1 app
One app, always on
Standard
$3/mo
or $30/yr, 2 months free
2 apps
Your app and your test app
Pro
$6/mo
or $60/yr, 2 months free
4 apps
A whole shelf of apps
RAM256 MB per app1 GB per app1 GB per app1 GB per app
CPU0.25 vCPU per app1 vCPU per app1 vCPU per app1 vCPU per app
Extra memorynot on this tier+1 GB for $1/mo, up to 3+1 GB for $1/mo, up to 3+1 GB for $1/mo, up to 3
Disk under /data3 GB5 GB10 GB20 GB
Web addressSleeps when idleAlways on, includedAlways on, includedAlways on, included
Databasenot on this tierMySQL includedMySQL includedMySQL included
Daily backups, 7 days+$1/mo+$1/mo+$1/mo+$1/mo
Image buildsnot on this tierDockerfile, RailpackDockerfile, RailpackDockerfile, Railpack
Start freeAdd StarterAdd StandardAdd Pro
  • Always on, no sleep timer, no daily renewals
  • Need more than 1 GB for one app? Add up to 3 GB for $1 a month each
  • GitHub auto-deploy, live console, crash doctor
  • Deploy history and rollback, scheduled commands, usage chart
  • Environment variables, private network, four regions

What a typical setup costs

A status page for your server

Free tier, sleeping address

$0

Wakes on the first visit in a few seconds; the page itself never sleeps.

A bot with a dashboard

Starter, address included

$2/mo

1 GB, the dashboard answers at once, MySQL included for its settings.

An API and its test copy

Standard + MySQL

$3/mo

Two apps, 1 GB and 1 vCPU each, 10 GB of disk, the database on your private network at no extra cost.

Next to the usual suspects

What an always-on app costs at the hosts people move from, from their pricing pages in September 2026.

HostSmallest always-on appPriceNote
FadeHost1 GB, always on$2/moFirst app free; web address included
Render0.5 GB, always on$7/moFree tier sleeps after 15 minutes
Heroku0.5 GB, sleeps after 30 min$5/moEco dynos share 1,000 hours
RailwayUsage billed$5/mo + usageAbout $10 per GB-month and $20 per vCPU-month

Moving from one of them? Railway, Heroku and Glitch each have a page on what changes.

Already hosting a game server? Add apps to the same subscription in the plan builder. One account, one bill.

Frequently asked questions

Is the free app hosting actually free?
Yes. Every verified account gets one app free, forever: 256 MB of RAM, always on. No credit card, no coins to grind, no daily renewal clicks and no sleep timer. Paid tiers start at $2/mo or $20/yr when you need more room or more than one app.
Which languages can I run?
Node.js, Python, Bun, Deno, Go, Java, PHP, Ruby, Rust, C# (.NET) and static sites. We detect the runtime from your repository and install with the package manager your lockfile names. If your app has to be compiled first, we run the build before starting it.
Can I use a Dockerfile?
Yes, on a paid tier. Set the build mode to Dockerfile and we build the image on our build box, push it to a private registry and run it on the node. Railpack does the same without a Dockerfile. Free apps run from source so the runtime can scan what it starts.
How does my app get a public address?
Open the app, pick a name and turn the web address on. It answers at https://name.fadehost.app over HTTPS within seconds. Your app listens on the PORT variable and we route the name to it. A free app gets an address that sleeps when nobody is using it and wakes on the next request; a paid app keeps its address awake. It comes with the plan either way, with nothing to add.
Can I deploy from a private repository?
Yes. Install the FadeHost GitHub App and pick the repository, or add an access token when you create the app. We fetch the code on every deploy and never store your credentials.
What happens when a push breaks the app?
The crash doctor tells you what broke, and the app's page lists every deploy with its commit. Roll back to the last good one and it redeploys pinned to that commit; unpin when the fix is pushed.
Do files my app writes survive a deploy?
The app directory is replaced with your repository on every deploy, so anything written next to your code is gone after a push. Write to the /data folder instead, which is yours and persists, or use a database. Backups of /data are $1 a month.
Can my app use a database?
Yes. Paid apps include a MySQL database at no extra cost, created with one click, with the connection string injected into the environment. PostgreSQL, MongoDB and Redis are available as managed databases on the same private network.
What are the limits?
Free: 256 MB, a quarter of a CPU, 3 GB of disk, one app. On the paid plans every app gets 1 GB and 1 vCPU, and the plan says how many apps it carries: Starter one, Standard two, Pro four. Disk is 5, 10 and 20 GB. Any app can take up to 3 GB more memory for $1 a month each. Every app has a hard memory and CPU limit; the usage chart shows how close you are.
What is not allowed?
Phishing and credential pages, proxies and tunnels, adult or illegal content, and bulk file or media delivery through the address. App hosting runs web apps and workers, not raw TCP or UDP services, outbound mail or privileged workloads. The full rules are in the terms.
What happens when my app crashes?
It restarts on its own, and the crash doctor reads the logs and explains what went wrong. The live console keeps the output so you can see what the app said last.