gear-codeOthers

1. Custom Route Category

To organize the server menu (tabs) into sections like "General", "Management" or "Configuration", we use something called categories. These categories are defined in a file called dravix-config.ts, which is located at:

/var/www/pterodactyl/resources/scripts/

Open the file and look for the following section:

export const SERVER_ROUTE_CATEGORIES = {
    general: 'general',
    management: 'management',
    configuration: 'configuration',
} as const;

Each entry here represents a group name to display and organize navigation links in the server page.

Adding a new category

Let's say you want to add a new section called "Minecraft".

Just add a new line like this:

export const SERVER_ROUTE_CATEGORIES = {
    general: 'general',
    management: 'management',
    configuration: 'configuration',
    minecraft: 'minecraft',    // 👈 here is your category
} as const;

That's it, now you can use it to your routes.

Assign the category to a route

After you've added your category in dravix-config.ts, the next step is to use that category in the routes array, located at:

Inside this file, you'll find a large list of all routes displayed under each server.

Each route is an object that defines:

  • the path

  • the permission required

  • the component to load

  • and now: the category it belongs to

Now, in routes.ts, you can assign this new category to a route like so:

Once added, the route will appear under a new navigation section labeled "Minecraft".

circle-exclamation

2. Restrict a Route to Specific Egg IDs

Sometimes, you might want a route to appear only for a specific server type (for example, only for Minecraft server or only for Rust servers).

To achieve this, you can use the eggIds option.

What is eggId ?

Every server in Pterodactyl is created using an Egg (template).

Each Egg has a unique numeric ID, which is used to identify the type of server (e.g. Minecraft = 1, Rust = 7, etc).

You can restrict certain routes to show up only if the current server matches on of those Egg IDs.

Where to add eggIds:

Go to this file:

Then find the route you want to restrict.

Add the eggIds field like this:

This means that this route will only be visible to servers created using Egg ID 3, 4 or 5.

What happens if you don't add eggIds ?

If you don't define eggIds, the route will be shown to all server types.

This is the default behavior.

circle-exclamation

3. Change the Default Theme

By default, the panel uses the system's theme preference (light or dark).

If you want to set a different default theme (regardless of the user's system), you can change the DEFAULT_THEME_MODE value.

Open dravix-config.ts, which is located at:

Then replace 'system' with one of the following values:

  • 'light' - Force light mode

  • 'dark' - Forces dark mode

  • 'system' - Uses the user's system preference (default)

circle-exclamation

Build the assets

Last updated