From ad5f1fc54e060c6ee062ffb6cc6ca3d6413c3cc5 Mon Sep 17 00:00:00 2001 From: Skye Date: Mon, 3 Apr 2023 21:42:38 +0900 Subject: [PATCH] docs: add readme --- README.md | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..7233662 --- /dev/null +++ b/README.md @@ -0,0 +1,40 @@ +# 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 + +```sh +cargo install --git https://git.skye.vg/me/e4mc e4mc-client +``` + +### Server + +```sh +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. \ No newline at end of file