Owl Developer
Server Media

Add Your Server

Step by step, from a fork to a published listing.

This guide is for server owners. You need a GitHub account and Git. The local check needs Node.js 22.

Before you start, confirm that you own the server, or have its owner's permission to submit its information and images. Read licensing.

1. Fork and clone

Fork OwlClient/server-media on GitHub, then clone your fork:

git clone https://github.com/<your-user>/server-media.git
cd server-media
git checkout -b add/my-server

2. Choose an id

The id is permanent. It is the directory name, and it is part of the public URLs. Use lowercase letters, digits and single hyphens, between 2 and 32 characters. See server ids.

3. Create the directory and the metadata

servers/
└── my-server/
    ├── metadata.json
    ├── icon.png
    ├── logo.png
    ├── background.jpg
    └── banner.webp

Create servers/my-server/metadata.json. The example below is a complete, valid file for a fictional server.

{
  "schemaVersion": 1,
  "id": "my-server",
  "name": "My Server",
  "description": "A survival and PvP network with weekly events and a friendly community.",
  "addresses": ["play.my-server.net"],
  "primaryAddress": "play.my-server.net",
  "minecraftVersions": ["1.8.9", "1.21.11"],
  "gameTypes": ["PvP", "Survival"],
  "primaryColor": "#2E6CF0",
  "website": "https://my-server.net",
  "socials": {
    "discord": "https://discord.gg/my-server"
  }
}

Every field is explained on the metadata page.

4. Add the images

All images are optional. Use the exact file names and the sizes in media specifications. An image must be real PNG, JPEG or WebP data, and must match its file extension.

5. Check locally

npm ci
npm run validate

A passing run prints Server media validation passed. A failing run prints each problem with the file and field that caused it:

servers/my-server/metadata.json
  Field "addresses[0]": "Play.My-Server.net" must be lowercase (use "play.my-server.net")

6. Commit, push and open a pull request

git add servers/my-server
git commit -m "feat(servers): add my-server"
git push -u origin add/my-server

Open a pull request against main and complete the template. It asks for the server name, addresses, website, Discord, owner, and a few confirmations.

7. Review and publication

Automated validation runs on your pull request. A maintainer then reviews the content and the rights statements. Once the pull request is merged, the catalog is rebuilt and published. Clients refresh the catalog within minutes.

Updating or removing your server

To change a server, edit its files and open a new pull request. Keep the id. To remove a server, open a pull request that deletes its directory and retires its id. See pull requests.

On this page