Whitelist applications for Minecraft
Players apply on a form, you review them on a password-protected page, and approving runs whitelist add on your server.
Approving adds the player to Emberfell.
I saw the harbour build in your Discord and would like to help finish it. I mostly play in the evenings, UTC.
- Plan
- Free, wakes on a visit
- Setup
- A server and a password
- Token
- Manage scope, made for you
- Keeps
- Applications under /data
What it does
A form players fill in
Their Minecraft name, their Discord name and why they want to join, checked before it is saved.
One click to whitelist
Review at /admin. Approve and whitelist runs whitelist add on your server, and Deny is recorded, so you know who you already turned down.
Posted to Discord
If you add a webhook, every application and every decision goes to a Discord channel.
Careful with your console
Names are checked against what Minecraft allows before a command is built, so a name with a semicolon never reaches the console. If the server is asleep, the application stays pending and the page tells you why.
Set it up
- 1
Turn the whitelist on
In the server's console,
whitelist on, orwhite-list=truein the server properties. Approving changes nothing until it is on. - 2
Deploy it
Press Deploy free, pick Whitelist applications, choose the server and set an admin password. A Discord webhook and the form's heading are optional.
- 3
Share the form
The form answers at
https://name.fadehost.appand the review page at/admin.
Routes
- /
- The application form.
- /admin
- The review page, behind the password.
- /health
- { ok, server, pending, approved, denied } for an uptime check.
Environment variables
They live in the table on the app's page in the panel, values masked once saved. Set for you means the panel fills it in when you deploy.
| Variable | Needed | What it is |
|---|---|---|
| FADEHOST_TOKEN | Set for you | An access token with the manage scope, created when you deploy. |
| SERVER_ID | Required | The server to whitelist on. The panel fills it from the server you pick. |
| ADMIN_PASSWORD | Required | The password for /admin, 8 characters or more. The app will not start without one. |
| DISCORD_WEBHOOK_URL | Optional | A Discord webhook for every application and decision. |
| TITLE | Optional | The heading on the form. Whitelist application unless you set one. |
| PORT | Set for you | The port the app listens on. |
Which plan it needs
The free plan runs it. The form sleeps between visitors and wakes in a few seconds, which an application form can easily afford.
Free
Recommended$0
No card
- 256 MB and a quarter of a CPU
- The address sleeps when idle and wakes on the next visit
- 1 GB of traffic a day
Starter
$2/mo
or $20 a year
- Always awake, with 1 GB and a full vCPU
- No traffic limit
- A MySQL database included
Running more than one? Standard carries two bots or apps for $3 a month and Pro four for $6, on one bill with your game servers. Every plan
Frequently asked questions
What happens if I approve while the server is asleep?
The command cannot run on a stopped server, so the page says so and the application stays pending. Approve it again once the server is up.
Why does it need the manage scope?
Approving runs whitelist add in your server's console, and the read scope cannot run commands.
How is the admin page protected?
By the password, compared in constant time, then a signed, http-only, same-site cookie, with a token tied to that session on every action. One application per address per ten minutes keeps the form from being flooded.
Where are the applications kept?
One file per application under /data/applications, on the volume that survives a redeploy. Copy the folder to back them up, or add daily backups for $1 a month.
More apps to start from
Bringing your own code instead? How an app deploys from GitHub
Take whitelist applications
Your first app is free, with no card, and gets its own https address.