Engrok

Quick rating

Engrok

No reviews yet

Automatic Ngrok tunnel opener for Dedicated Servers. Includes integration with GitHub for saving the Ngrok tunnel IP in a Gist for players to use with EverChanging.

QoL & Tweaks
Mod Loaders
Fabric
Minecraft

Community voices

Reviews

Versions
Loading versions…
Match includes

Click once to include, again to exclude, again to clear

Rating Any
Any 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Min
Max
Play Status
Reviews
Time Played
hrs+
Verified developers only
Has developer response
List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

No reviews yet. Be the first to review this project!

Get it on

Available Platforms

Compatibility

Supported Environments

Dev Environment
Client Unsupported
Server Required

About

Project Details

Type
Mod
License
MIT License
Latest Version
Release 1.0 (1.21.1)
Authors
CurseForge
Modrinth

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID
Modrinth ID

Resources

External Links

Source Issues Wiki Discord

About

Description

Engrok Thumbnail

Engrok

Requires Cloth Config Requires Fabric API


Engrok is a server-side mod for dedicated servers which opens an Ngrok tunnel automatically once the server starts. There's an integration for GitHub Gists which uploads the Ngrok tunnel IP to a GitHub Gist (an existing one or a new one, depending on the mod's config - if there isn't an existing one, a new one will be created and saved to the config file automatically) so users can either retreive the IP from the Gist directly, or, using the mod Ever Changing on their clients to automatically retrieve it for them.

How to use

For the mod to create a config file you can modify you need to run the server with the mod loaded first. Then make sure to stop the server, then head to the folder "config" and open the file "engrok.json5" with a text editor. The config'll probably look like this at the beginning:

{
    "enabled": true,
    "ngrokAuthToken": "",
    "regionSelect": "AUTO",
    "gitHubAuthToken": "",
    "gistId": ""
}

Config File

  • Enabled: Self explanatory. Controls the mod.
  • Ngrok Auth Token: If you want the mod to do automatically open an Ngrok tunnel, you'll have to provide it your Ngrok Authentication Token, which you can get from the Ngrok Website Dashboard. You need an Ngrok account in order to acquire an auth token.
  • Region Select: Ngrok is capable of automatically selecting the tunnel location with the least amount of latency relative to you, so you should probably leave it at its default value. Otherwise, you can choose from a list on the Ngrok website.
  • GitHub Auth Token: In case you want to automatically update the tunnel's address for your friends, I have made a GitHub integration which either makes a new Gist and saves its ID in the next field, or edits the existing gist in the following field. To get a GitHub Authentication Token, you'll need to make sure you're logged into GitHub, then press your profile picture on the top right, head into Settings » Developer Settings » Personal access tokens » Tokens (classic) and press Generate new token, then Generate new token (classic). Then set Expiration to No expiration (or shorter, if you'd like), and under the Select scopes list make sure gist is ticked/enabled, then press Generate Token. Make sure to copy the token, because you'll need to regenerate a new one if you don't, then copy it into the config file.
  • Gist ID: If you have already made a gist, you can change this ID to the gist's ID to have the mod edit it everytime the tunnel is opened (How to find a gist ID: Let's take this gist link for example gist.github.com/MagicQuartz/3bef909cddbfbb117f0bcf101222a5dc. You can copy the part after the last slash to have your ID, in this case it's 3bef909cddbfbb117f0bcf101222a5dc).

In-game Commands

/engrok
This command essentially manipulates the config file. Leaving any of these commands without their parameters will empty the config from them and leave a blank "".

  • /engrok setNgrokAuth <token> - Sets the Ngrok Authentication Token in the config file.
  • /engrok setGitHubAuth <token> - Sets the GitHub Authentication Token in the config file.
  • /engrok setGistId <id> - Sets the Gist ID in the config file.

/tunnel
This command controls the Ngrok tunnel.

  • /tunnel open - Opens the tunnel if it's closed
  • /tunnel close - Closes the tunnel if it's open.
  • /tunnel status - Tells you wether the tunnel is open or close and its IP address if it's open.

/gist
Displays data relating to the gist.

  • /gist getIp - Provides you with the IP of the tunnel as shown in the gist online, to make sure it is updated to be like the actual tunnel address you can see using /tunnel status.
  • /gist getUrl - Provides you with the url of the gist, which you can share with friends to use with the Ever Changing mod (More on that soon) to automatically receive the IP every time it changes.

This mod is inspired by Ngrok LAN by Alujjdnd and a big chunk of this mod's code has been taken from Ngrok LAN. Please keep in mind this mod was made in about 12 hours so it may not work perfectly, but I did my best to patch everything, so please do not try to intentionally break things.

Engrok Thumbnail

Engrok

Requires Cloth Config Requires Fabric API

Engrok is a server-side mod for dedicated servers which opens an Ngrok tunnel automatically once the server starts. There's an integration for GitHub Gists which uploads the Ngrok tunnel IP to a GitHub Gist (an existing one or a new one, depending on the mod's config - if there isn't an existing one, a new one will be created and saved to the config file automatically) so users can either retreive the IP from the Gist directly, or, using the mod Ever Changing on their clients to automatically retrieve it for them.

How to use

For the mod to create a config file you can modify you need to run the server with the mod loaded first. Then make sure to stop the server, then head to the folder "config" and open the file "engrok.json5" with a text editor. The config'll probably look like this at the beginning:

{
	"enabled": true,
	"ngrokAuthToken": "",
	"regionSelect": "AUTO",
	"gitHubAuthToken": "",
	"gistId": ""
}

Config File

  • Enabled: Self explanatory. Controls the mod.
  • Ngrok Auth Token: If you want the mod to do automatically open an Ngrok tunnel, you'll have to provide it your Ngrok Authentication Token, which you can get from the Ngrok Website Dashboard. You need an Ngrok account in order to acquire an auth token.
  • Region Select: Ngrok is capable of automatically selecting the tunnel location with the least amount of latency relative to you, so you should probably leave it at its default value. Otherwise, you can choose from this list.
  • GitHub Auth Token: In case you want to automatically update the tunnel's address for your friends, I have made a GitHub integration which either makes a new Gist and saves its ID in the next field, or edits the existing gist in the following field. To get a GitHub Authentication Token, you'll need to make sure you're logged into GitHub, then press your profile picture on the top right, head into Settings » Developer Settings » Personal access tokens » Tokens (classic) and press Generate new token, then Generate new token (classic). Then set Expiration to No expiration (or shorter, if you'd like), and under the Select scopes list make sure gist is ticked/enabled, then press Generate Token. Make sure to copy the token, because you'll need to regenerate a new one if you don't, then copy it into the config file.
  • Gist ID: If you have already made a gist, you can change this ID to the gist's ID to have the mod edit it everytime the tunnel is opened (How to find a gist ID: Let's take this gist link for example https://gist.github.com/MagicQuartz/3bef909cddbfbb117f0bcf101222a5dc. You can copy the part after the last slash to have your ID, in this case it's 3bef909cddbfbb117f0bcf101222a5dc).

In-game Commands

/engrok
This command essentially manipulates the config file. Leaving any of these commands without their parameters will empty the config from them and leave a blank "".

  • /engrok setNgrokAuth <token> - Sets the Ngrok Authentication Token in the config file.
  • /engrok setGitHubAuth <token> - Sets the GitHub Authentication Token in the config file.
  • /engrok setGistId <id> - Sets the Gist ID in the config file.

/tunnel
This command controls the Ngrok tunnel.

  • /tunnel open - Opens the tunnel if it's closed
  • /tunnel close - Closes the tunnel if it's open.
  • /tunnel status - Tells you wether the tunnel is open or close and its IP address if it's open.

/gist
Displays data relating to the gist.

  • /gist getIp - Provides you with the IP of the tunnel as shown in the gist online, to make sure it is updated to be like the actual tunnel address you can see using /tunnel status.
  • /gist getUrl - Provides you with the url of the gist, which you can share with friends to use with the Ever Changing mod (More on that soon) to automatically receive the IP every time it changes.

This mod is inspired by Ngrok LAN by Alujjdnd and a big chunk of this mod's code has been taken from Ngrok LAN. Please keep in mind this mod was made in about 12 hours so it may not work perfectly, but I did my best to patch everything, so please do not try to intentionally break things.

Screenshots

Gallery

This project has no gallery images yet.

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

0
Ratings
0
Followers
0
In stacks

By the numbers

Statistics

<1,000
Total Downloads
CurseForge
<1,000
Modrinth
<1,000
Last Updated
CurseForge
Created
CurseForge
Modrinth
Last synced
When ModDex last fetched this project from CurseForge or Modrinth. Every project is re-checked on a schedule, and any project that ships a new file is synced automatically within hours of the release.
New file updates sync automatically
How syncing works