Wispdock’s control panel isn’t built yet. Where a step says “in your control panel”, use whatever your host gives you for files, the console and start/stop. The Minecraft side works the same everywhere.
If these mods come from a published pack, use its server distribution; our modpack hosting page lists the compatibility details to share.
Pick the versions
Fabric has two parts: Fabric Loader, which loads mods, and Fabric API, a library mod most other mods need. Both are released quickly after each Minecraft update, so Fabric is rarely what holds you back. Your mods are.
Pick the Minecraft version first, based on the mods you want. On Modrinth, search with the Fabric loader filter and your candidate game version, and check that the mods you care about all have a file for it. The newest Minecraft release is often a few weeks ahead of the mods. If you plan a modpack someone else made, use the modpack guide instead: the pack decides the versions for you.
For Fabric Loader, take the latest stable version offered on the download page. Newer loaders run older mods fine, so there’s little reason to pin an old one.
Java follows the Minecraft version: Java 21 for 1.20.5 and newer, Java 17 for 1.18 to 1.20.4. Set it in your control panel’s startup or version setting before the first start.
Install Fabric on the server
There are two ways. Both end with a Fabric server that downloads the vanilla server files it needs.
The server launcher jar (simplest)
On fabricmc.net, open the server download page, pick the Minecraft version, the loader version and the installer version, and download the executable server jar. Its name looks like fabric-server-mc.<mc>-loader.<loader>-launcher.<installer>.jar. Upload it to an empty server folder and start it like any server jar:
java -Xmx4G -jar fabric-server-mc.<mc>-loader.<loader>-launcher.<installer>.jar nogui
On the first start it downloads the vanilla server and the libraries, then carries on as a Fabric server. If your control panel expects a fixed jar name such as server.jar, rename the file or change the startup to match.
The installer in server mode
The Fabric installer (a separate download on fabricmc.net) has a server mode. Run it from a terminal in the server folder:
java -jar fabric-installer-<version>.jar server -mcversion 1.21.1 -downloadMinecraft
Swap 1.21.1 for the version you picked. This writes fabric-server-launch.jar, downloads the vanilla server.jar next to it and fills libraries. Add -loader <version> to choose a specific loader, or -dir <folder> to install somewhere else. Then start it with:
java -Xmx4G -jar fabric-server-launch.jar nogui
The installer’s window also has a Server tab that does the same thing on your PC. Upload the resulting folder afterwards.
Start it and accept the EULA
The first start stops almost at once and writes eula.txt. Open it, change the line to eula=true, save, and start again. This time the server creates mods, config, server.properties and the world.
Near the top of logs/latest.log, Fabric prints how many mods it’s loading and lists them. On a fresh server that list is only the loader, Java and Minecraft itself. Further down, wait for the Done line. If you’ve never set up a server before, how to make a Minecraft server covers the basics around this step.
Add Fabric API
Download Fabric API from Modrinth or CurseForge. Pick the file for your exact Minecraft version: the file name ends in something like +1.21.1.jar. Put it in the server’s mods folder.
Fabric Loader runs without Fabric API, and a few mods don’t need it. Most do, and a missing Fabric API is the most common reason a new Fabric server refuses to start. Players need it in their own mods folder too.
Add mods
Stop the server.
Download each mod as a
.jarbuilt for Fabric and for your Minecraft version. A Forge or NeoForge build of the same mod won’t load, even if the version number matches.Check each mod’s dependencies. Modrinth lists them on the version page. Common ones are Fabric Language Kotlin, Cloth Config and Architectury API. Download those too.
Upload the jars straight into
mods. Don’t unzip them and don’t put them in a subfolder.Start the server and read the console. If a dependency is missing or a version is wrong, Fabric Loader stops before the world loads and says which mod needs what. Fix that one thing and start again. Reading logs and crash reports helps if the message is buried.
Add mods in small batches. If you upload 40 at once and it crashes, you’ll spend longer finding the culprit than you saved.
Which mods go on the server
Every Fabric mod falls into one of three groups, and the group decides where it goes:
| Kind of mod | Examples | Install on |
|---|---|---|
| Adds content: blocks, items, mobs, dimensions | Most gameplay mods | The server and every player |
| Server-side: changes how the server runs | Lithium, FerriteCore, Chunky, spark, LuckPerms | The server. Players don’t need them |
| Client-side: changes what one player sees | Sodium, Iris, Mod Menu | Players only |
Modrinth shows this on each project page as the mod’s environment: whether it runs on the client, the server or both, and whether each side is required or optional. The search page can filter by environment too, which is the quickest way to find server-side mods. CurseForge has less reliable labelling, so read the description there.
A mod can declare itself client-only in its fabric.mod.json, and Fabric Loader won’t load it on a server. Not every client mod sets that, and the ones that don’t can crash the server at startup. If the crash names a client mod, take it off the server.
A useful side effect: if every mod on the server is server-side, players can join from the plain vanilla game, without Fabric at all. A server running only Lithium, Chunky and spark is a faster vanilla server as far as players are concerned.
Set up players’ games
Players who need mods install Fabric for the same Minecraft version. The Fabric installer’s Client tab adds a Fabric profile to the official launcher. Prism Launcher and the Modrinth App can create a Fabric instance directly, which is easier to manage.
Into that profile go Fabric API and every content mod from the server, in the same versions. Client-side mods are up to each player.
The least error-prone way to share the list: build the instance once in Prism Launcher or the Modrinth App, export it as a .mrpack and send that file to your group. Everyone imports it and gets the same versions. When a player is missing a content mod, Fabric API usually disconnects them with a message about missing registry entries, which names the mod’s blocks or items.
Then share the address; connecting to your server covers that part.
Keep it updated
Back up before any update. Updating Fabric Loader on the same Minecraft version is low-risk: download the new launcher jar or rerun the installer, and keep everything else. Mod updates usually are too, as long as you read the changelog for anything that removes content.
A new Minecraft version is a bigger job. Every mod needs a build for it, Fabric API included, and the world can’t go back afterwards. Wait until the mods you rely on have caught up, then take a backup before you switch.
Frequently asked questions
Can I use Paper plugins on a Fabric server?
No. Fabric loads Fabric mods only. Several well-known plugins also have Fabric versions, LuckPerms, spark and Chunky among them. If your plans depend on a set of plugins, run Paper instead.
Do players need Fabric installed to join?
Only if the server runs mods that add content, such as blocks, items or mobs. If every mod on the server is server-side, players can join from the vanilla game.
Is Fabric API required?
Fabric Loader runs without it, but most Fabric mods depend on it. Install the Fabric API file for your Minecraft version on the server and on every player’s game.
Should I use Fabric or Quilt?
Quilt loads most Fabric mods, but nearly every mod is built and tested on Fabric first. Start with Fabric unless a mod you need only supports Quilt.
Why does my Fabric server stop right after I add a mod?
Usually a missing dependency, a mod for a different Minecraft version, or a client-only mod. Fabric Loader prints which one near the end of logs/latest.log. Fix that line and start again.
A Fabric server with a handful of mods doesn’t need much memory; a long mod list does. The draft plans on the pricing page go from 2 GB to 16 GB. Prices are drafts and ordering isn’t open yet.
Still stuck? Send us the details and your latest.log.