You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1.0 KiB

e4mc

Easy Ephemeral External Exposure for Minecraft

The client and server code for e4mc, a ngrok-like tunneling solution for Minecraft: Java Edition. It uses WebSockets as the primary connection method and has a simple, easy-to-implement (for clients) wire protocol.

Install

Client

cargo install --git https://git.skye.vg/me/e4mc e4mc-client

Server

cargo install --git https://git.skye.vg/me/e4mc e4mc-server

Usage

Client

If tunneling a server opened at 25565(default for dedicated servers), just run e4mc-client with no arguments. If you wish to tunnel a different port, just supply the -p argument. For more options, please consult --help's output.

Server

The server doesn't have TLS termination; You should put it behind a reverse proxy that supports it. The server is exclusively configured by environment variables; they are WS_BIND_ADDR, MC_BIND_ADDR, and BASE_DOMAIN.

Contributing

It'd be really cool if you contributed 🥺

License

MIT or Apache-2.0 depending on your choice.