{"id":21334233,"url":"https://github.com/neocturne/minedmap","last_synced_at":"2025-05-16T09:03:08.903Z","repository":{"id":38289449,"uuid":"142470722","full_name":"neocturne/MinedMap","owner":"neocturne","description":"Minecraft map renderer and viewer","archived":false,"fork":false,"pushed_at":"2025-04-03T17:00:21.000Z","size":2953,"stargazers_count":119,"open_issues_count":11,"forks_count":14,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-05-12T12:45:17.948Z","etag":null,"topics":["leaflet","map","minecraft"],"latest_commit_sha":null,"homepage":"","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/neocturne.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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}},"created_at":"2018-07-26T17:08:02.000Z","updated_at":"2025-04-23T11:05:58.000Z","dependencies_parsed_at":"2023-08-26T00:59:19.126Z","dependency_job_id":"d2fc6b54-3bee-4230-a74c-35f66100937b","html_url":"https://github.com/neocturne/MinedMap","commit_stats":null,"previous_names":["neocturne/minedmap","neoraider/minedmap"],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neocturne%2FMinedMap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neocturne%2FMinedMap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neocturne%2FMinedMap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neocturne%2FMinedMap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neocturne","download_url":"https://codeload.github.com/neocturne/MinedMap/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254501555,"owners_count":22081528,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["leaflet","map","minecraft"],"created_at":"2024-11-21T23:18:34.356Z","updated_at":"2025-05-16T09:03:08.878Z","avatar_url":"https://github.com/neocturne.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MinedMap\n\n* Render beautiful maps of your [Minecraft](https://minecraft.net/) worlds!\n* Put them on a webserver and view them in your browser!\n* Compatible with unmodified Minecraft Java Edition 1.8 up to 1.21.4 (no mod installation required!)\n* Illumination layer: the world at night\n* Fast: create a full map for a huge 3GB savegame in less than 5 minutes in single-threaded operation\n* Multi-threading support: pass `-j N` to the renderer to use `N` parallel threads for generation\n* Incremental updates: only recreate map tiles for regions that have changed\n* Typically uses less than 100MB of RAM in single-threaded operation (may be higher when `-j` is passed)\n* Cross-platform: runs on Linux, Windows, and likely other systems like MacOS as well\n\n![Screenshot](https://raw.githubusercontent.com/neocturne/MinedMap/997a4fb24e89d2cd3c671d77eafaa47084d14304/docs/images/MinedMap.png)\n\n## About\n\nMinedMap consists of two components: a map renderer generating map tiles from\nMinecraft save games, and a viewer for displaying and navigating maps in a browser\nbased on [Leaflet](https://leafletjs.com/). The map renderer is heavily inspired by\n[MapRend](https://github.com/YSelfTool/MapRend), but has been reimplemented from scratch\n(first in C++, now in Rust) for highest performance.\n\n## How to use\n\nDownload the binary release that matches your platform from the Github release\npage (or install from source using `cargo`), as well as the platform-independent\nviewer archive. Extract the viewer archive. The extracted directory contains the\nHTML and JavaScript to operate the viewer and will be made publicly accessible\non a web server. The image data generated by MinedMap will be stored in the\n`data` subdirectory of the extracted viewer.\n\nMinecraft stores its save data in a directory `~/.minecraft/saves` on Linux,\nand `C:\\Users\\\u003cusername\u003e\\AppData\\Roaming\\.minecraft\\saves`. To generate MinedMap\ntile data from a save game called \"World\", use the a command like the following\n(replacing the first argument with the path to your save data; `\u003cviewer\u003e` refers\nto the directory where you unpacked the MinedMap viewer):\n```shell\nminedmap ~/.minecraft/saves/World \u003cviewer\u003e/data\n```\n\nThe first map generation might take a while for big worlds, but subsequent calls will\nonly rebuild tiles for region files that have changed, rarely taking more than a second\nor two. This makes it feasible to update the map very frequently, e.g. by running\nMinedMap as a Cron job every minute.\n\nNote that it is not possible to open the viewer *index.html* without a webserver, as\nit cannot load the generated map information from `file://` URIs. For testing purposes,\nyou can use a minimal HTTP server, e.g. if you have Python installed just run the\nfollowing in the viewer directory:\n```shell\npython3 -m http.server\n```\nThis test server is very slow and cannot handle multiple requests concurrently, so use\na proper webserver like [nginx](https://nginx.org/) or upload the viewer together with\nthe generated map files to public webspace to make the map available to others.\n\nIf you are uploading the directory to a remote webserver, you do not need to upload the\n`\u003cviewer\u003e/data/processed` directory, as it is only used locally to allow processing\nupdates more quickly.\n\n### Image formats\n\nMinedMap renders map tiles as PNG by default. Pass `--image-format webp` to select\nWebP instead. For typical Minecraft worlds, using WebP reduces file sizes by 20-25%\nwithout increasing processing time.\n\nMinedMap always uses lossless compression for tile images, regardless of the\nimage format.\n\n### Signs\n\n![Sign screenshot](https://raw.githubusercontent.com/neocturne/MinedMap/e5d9c813ba3118d04dc7e52e3dc6f48808a69120/docs/images/signs.png)\n\nMinedMap can display sign markers on the map, which will open a popup showing\nthe sign text when clicked.\n\nGeneration of the sign layer is disabled by default. It can be enabled by passing\nthe `--sign-prefix` or `--sign-filter` options to MinedMap. The options allow\nto configure which signs should be displayed, and they can be passed multiple\ntimes to show every sign that matches at least one prefix or filter.\n\n`--sign-prefix` will make all signs visible the text of which starts with the\ngiven prefix, so something like `--sign-prefix '[Map]'` would allow to put up\nsigns that start with \"\\[Map\\]\" in Minecraft to add markers to the map. An\nempty prefix (`--sign-prefix ''`) can be used to make *all* signs visible on\nthe map.\n\n`--sign-filter` can be used for more advanced filters based on regular expressions.\n`--sign-filter '\\[Map\\]'` would show all signs that contain \"\\[Map\\]\"\nanywhere in their text, and `--sign-filter '.'` makes all non-empty signs (signs\ncontaining at least one character) visible. See the documentation of the\n[regex crate](https://docs.rs/regex) for more information on the supported syntax.\n\nAll prefixes and filters are applied to the front and back text separately, but\nboth the front and the back text will be shown in the popup when one of them\nmatches.\n\nFinally, `--sign-transform` allows to specify sed-style replacement patterns to\nmodify the text displayed on the map. This can be used if the text matched by\n`--sign-prefix` or `--sign-filter` should not be displayed:\n`--sign-transform 's/\\[Map\\]//'` would replace each occurence of \"\\[Map\\]\" with\nthe empty string.\n\n**Note:** On Windows, double quotes (`\"`) must be used for arguments instead\nof single quotes (`'`), and all backslashes in the arguments must be escaped\nby doubling them. This can make regular expressions somewhat difficult to\nwrite and to read.\n\n## Installation\n\nBinary builds of the map generator for Linux and Windows, as well as an archive\ncontaining the viewer can be found on the GitHub release page.\n\nBuilding the generator from source requires a recent Rust toolchain (1.72.0\nor newer). The following command can be used to build the current development version:\n```shell\ncargo install --git 'https://github.com/neocturne/MinedMap.git'\n```\n\nIf you are looking for the older C++ implementation of the MinedMap tile renderer,\nsee the [v1.19.1](https://github.com/neocturne/MinedMap/tree/v1.19.1) tag.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneocturne%2Fminedmap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneocturne%2Fminedmap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneocturne%2Fminedmap/lists"}