{"id":47936792,"url":"https://github.com/sorokya/reoserv","last_synced_at":"2026-04-15T06:11:44.658Z","repository":{"id":59063989,"uuid":"340187544","full_name":"sorokya/reoserv","owner":"sorokya","description":"The rust powered endless online server emulator","archived":false,"fork":false,"pushed_at":"2026-04-15T04:49:07.000Z","size":2874,"stargazers_count":16,"open_issues_count":7,"forks_count":6,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-04-15T05:22:35.020Z","etag":null,"topics":["async","endless-online","eo","game","mmorpg","rust-lang","server","tokio"],"latest_commit_sha":null,"homepage":"https://reoserv.net","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sorokya.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-02-18T21:55:54.000Z","updated_at":"2026-04-15T04:48:10.000Z","dependencies_parsed_at":"2023-12-06T22:25:14.266Z","dependency_job_id":"83dc0472-6866-48fb-9d4a-2af6c5d8ebce","html_url":"https://github.com/sorokya/reoserv","commit_stats":null,"previous_names":[],"tags_count":50,"template":false,"template_full_name":null,"purl":"pkg:github/sorokya/reoserv","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sorokya%2Freoserv","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sorokya%2Freoserv/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sorokya%2Freoserv/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sorokya%2Freoserv/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sorokya","download_url":"https://codeload.github.com/sorokya/reoserv/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sorokya%2Freoserv/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31828578,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T18:05:02.291Z","status":"online","status_checked_at":"2026-04-15T02:00:06.175Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["async","endless-online","eo","game","mmorpg","rust-lang","server","tokio"],"created_at":"2026-04-04T07:44:47.381Z","updated_at":"2026-04-15T06:11:44.651Z","avatar_url":"https://github.com/sorokya.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Rust](https://github.com/sorokya/reoserv/actions/workflows/rust.yml/badge.svg?branch=master)](https://github.com/sorokya/reoserv/actions/workflows/rust.yml)\n\n\u003cimg src=\"https://raw.githubusercontent.com/sorokya/reoserv/master/assets/logo.webp\" alt=\"REOSERV\" style=\"width:500px\"/\u003e\n\nThe Rust-powered server emulator for [Endless Online](https://endless-online.com) 🦀\n\n## Prerequisites\n\nBefore building the server, ensure you have the following installed:\n\n- [Rust](https://www.rust-lang.org/)\n- [Cargo](https://doc.rust-lang.org/cargo/appendix/glossary.html#cargo)\n\nI recommend using [rustup](https://rustup.rs/) to install Rust and Cargo.\n\n## Building\n\nTo build the server, simply run:\n\n```sh\ncargo build\n```\n\nFor a release build, use:\n\n```sh\ncargo build --release\n```\n\n\u003e [!NOTE]\n\u003e Set up and configure your database before starting the server. You can use either MySQL/MariaDB or SQLite.\n\u003e Edit `config/Config.toml` to match your production database before creating a release build.\n\n## Database setup and configuration\n\nReoserv supports both MySQL/MariaDB and SQLite.\n\n1. Choose a database driver in `config/Config.toml` (or `config/Config.local.toml`):\n    - `driver = \"mysql\"` for MySQL/MariaDB\n    - `driver = \"sqlite\"` for SQLite\n\n2. Configure database connection settings:\n    - For MySQL/MariaDB, set `host`, `port`, `name`, `username`, and `password`.\n    - For SQLite, set `name` (the server will use `\u003cname\u003e.db` in the working directory).\n\n3. Start the server normally. It will create the migration log table and apply any missing migrations from `data/migrations/` automatically:\n    ```sh\n    cargo run\n    ```\n\n\u003e [!WARNING]\n\u003e Back up your database first before upgrading an older installation. Startup now applies pending migrations automatically, including legacy schema transitions.\n\n4. If you choose MySQL/MariaDB and are using the provided Compose setup, start only the database service with:\n    ```sh\n    docker compose up -d db\n    ```\n\n## Docker Compose (Reoserv + MariaDB)\n\nThe provided `compose.yml` starts both services:\n\n- `db`: MariaDB database\n- `reoserv`: Reoserv server container\n\nBefore starting, make sure your `config/Config.toml` (or mounted `config/Config.local.toml`) uses:\n\n- `driver = \"mysql\"`\n- `host = \"db\"`\n- `port = \"3306\"`\n- Matching `name`, `username`, and `password` values\n\nBuild/start the stack:\n\n```sh\ndocker compose up -d --build\n```\n\nStart the server in the container to let startup migrations create or upgrade the schema:\n\n```sh\ndocker compose run --rm reoserv ./reoserv\n```\n\n## Start the server\n\nTo run the server, use:\n\n```sh\ncargo run\n```\n\n## Setup quests, NPCs and items for your server\n\nSee [our documentation](https://reoserv.net/docs) for instructions on how to setup quests, NPCs, items and more for your server.\n\n- [Classes, Items, Spells, NPCs](https://reoserv.net/docs/pubs)\n- [Maps](https://reoserv.net/docs/maps)\n- [Quests](https://reoserv.net/docs/quests)\n\n## Setup the Endless Online client\n\nSee `eo-client/README.md` for instructions\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsorokya%2Freoserv","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsorokya%2Freoserv","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsorokya%2Freoserv/lists"}