CLI tool
BlueMap-Minecraft/BlueMap avatar
BlueMap-Minecraft/BlueMap

BlueMap: 3D Minecraft World Maps in the Browser, as a Plugin, Mod or CLI

A Minecraft mapping tool that creates 3D models of your Minecraft worlds and displays them in a web viewer.

2,813 stars241 forksJavaMIT

At a glance

What is it?
BlueMap renders Minecraft worlds into 3D models and serves them through a WebGL viewer, and it ships as a Spigot/Paper or Sponge plugin, a Fabric or Forge mod, and a standalone command-line tool. The interesting part is not the visual result but the asynchronous render pipeline behind it.
Who is it for?
Adopt BlueMap if you run a Spigot/Paper, Sponge, Fabric or Forge server and want a browser-viewable 3D map without handing your world files to a third party, or if you want to render a world offline with the CLI. Do not adopt it if you want a flat, low-overhead 2D overview map, or if your host gives you no spare CPU, because rendering still consumes cycles even though it never blocks the server thread.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 7 days ago.
What is it written in?
Mainly Java, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 24, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What BlueMap actually produces, and for whom

BlueMap reads Minecraft world files and generates a map plus 3D models of the whole surface, which the web app displays in a browser. The README frames the result as viewing the world "as if you were ingame", or pulling back for an overview. That is a different output from a top-down tile map: you get geometry, not a flat picture, and the viewer runs on WebGL in the browser (threejs and webgl are both listed as repository topics).

The audience follows from the packaging. BlueMap ships as a Spigot/Paper or Sponge plugin, as a Fabric or Forge mod, and as a standalone command-line tool that works without any server. So there are two distinct users. The first runs a multiplayer server and wants players to browse the world from a URL. The second has world files on disk and no live server at all, and just wants a render. A single-player world on Fabric or Forge is the third case, covered by the mod build.

The project is MIT licensed, and the last push to the default branch was on 2026-09-23, with releases v5.27, v5.26 and v5.25 all published in mid September 2026. That is a maintained codebase, not a dormant one.

The asynchronous render pipeline and why it matters

The claim worth examining is in the README: if installed as a plugin or mod, BlueMap "renders asynchronously to your MinecraftServer-Thread", so it never blocks the server thread directly, and a server should not slow down while BlueMap renders as long as the CPU is not fully utilized.

That last clause is the whole story. Moving work off the server thread removes stalls, not load. The render still needs CPU, and on a host where the CPU is already saturated by players, chunk generation or other plugins, the work has nowhere to go. The design is honest about this rather than hiding it, and it is the correct trade-off: a map that lags behind is better than a tick loop that stutters.

The data flow is one-directional. World files are read, geometry is produced, and the result is served as a web app. Nothing in the README describes BlueMap writing back into the world, so it is a read-only consumer of your region data. The repository layout reflects the split: core, common, api and implementations are separate top-level directories, which is what lets the same renderer back four different platform integrations. The api module also implies third-party addons and markers, which appear in search phrasing around the project.

Installing BlueMap and getting a first map

The README points at the releases page for downloads and at the wiki's installation page for setup, and it does not reproduce the per-platform steps inline. What it does give is the build path and a container recipe, which is enough to stand up the CLI variant.

If you are building from source, clone with submodules. The `--recursive` flag is required, since the repository has a .gitmodules entry:

bash
git clone --recursive https://github.com/BlueMap-Minecraft/BlueMap.git

Then build from the root directory. The README names a single Gradle task, and the output lands in a release folder:

bash
./gradlew release

After that, the compiled JAR files are in `./build/release`. The Dockerfile copies `build/release/*-cli.jar` into the image as `cli.jar` and sets the entrypoint to run it, so the CLI jar is the artifact for headless rendering:

dockerfile
FROM eclipse-temurin:25-jre-jammy
WORKDIR /app
COPY build/release/*-cli.jar cli.jar
ENTRYPOINT [ "java", "-jar", "cli.jar" ]

For a server, the practical route is to download a release rather than build one, then follow the wiki installation instructions for your platform (Spigot/Paper, Sponge, Fabric or Forge). Once installed, the map is served by the web app and you reach it in a browser; the README links a public demo map at bluecolored.de/bluemap if you want to see the viewer before installing anything.

Where BlueMap is the wrong tool

The asynchronous design makes BlueMap safe for the server thread, but it does not make it cheap. If your host is a small VPS already running close to full CPU with a busy world, adding a renderer that continuously consumes spare cycles is a poor fit, and the README's own caveat ("as long as your CPU is not fully utilized") is the condition you would be violating.

The output is also heavier than a flat map by construction. A 3D model of the whole surface is more data to generate and more to serve than a set of 2D tiles, and the client needs WebGL to view it. For a player on a weak device, or for an admin who only wants a quick coordinate reference, a 2D map is the better answer and BlueMap is overkill.

There is a third boundary: this is a renderer, not a live player tracker. Nothing in the README describes real-time player positions on the map, so if that is the feature you are shopping for, you are evaluating the wrong project.

BlueMap compared with Dynmap

The comparison people search for is BlueMap vs Dynmap, and the difference is in the output format, not just the feature list. Dynmap is the long-standing option in this space and is built around the classic web map model: rendered tiles assembled into a browsable 2D map, which is cheap to serve and easy to embed. BlueMap's stated output is 3D models of the world surface viewed through a WebGL app, which is a fundamentally different rendering and serving problem.

That difference drives everything else. Tile maps can be regenerated incrementally and served as static images; a 3D model carries more geometry and pushes more work to the client. The payoff is the view: perspective, depth and the ability to move through the world rather than pan across a picture of it.

Pick based on what your players will do with it. If the map is a reference tool for finding biomes and bases, a 2D tile map is lighter and sufficient. If the point is showing off builds in three dimensions, BlueMap is the one that produces that artifact.

Maintenance, upgrades and the MIT licence

The release cadence is visible in the tags: v5.25, v5.26 and v5.27 were all published within roughly a day of each other in mid September 2026, and the last push to master was on 2026-09-23. Rapid point releases like that usually mean fixes landing on top of a larger change, so pin a version you have tested rather than tracking latest on a production server.

Upgrade cost depends on how you installed it. A plugin or mod upgrade is a JAR swap plus a restart, and the render output is regenerated from world files, so there is no database migration to plan around as far as the README describes. A CLI deployment is the same idea with a different artifact, and the Dockerfile shows the image expects a `*-cli.jar` copied in at build time, so a container upgrade means rebuilding the image against a new release.

The licence is MIT. That is permissive and places few obligations on how you run or redistribute it, but this is a description of the licence text, not legal advice. If you are bundling BlueMap into something you ship, read the LICENSE file in the repository root yourself. Note also that the README thanks JetBrains for an open source licence used for development; that is a development tooling arrangement and does not change the project's own licence.

Editorial conclusion

Adopt BlueMap if you run a Spigot/Paper, Sponge, Fabric or Forge server and want a browser-viewable 3D map without handing your world files to a third party, or if you want to render a world offline with the CLI. Do not adopt it if you want a flat, low-overhead 2D overview map, or if your host gives you no spare CPU, because rendering still consumes cycles even though it never blocks the server thread. Before you commit, verify three things: which of the four platform packages matches your server, what your storage and web-server configuration is for the generated map files, and how much headroom your CPU actually has at peak player count.

Frequently asked questions

How does BlueMap work?

It reads Minecraft world files and generates a map plus 3D models of the world surface, which a web app then displays in the browser. When installed as a plugin or mod, it renders asynchronously to the Minecraft server thread rather than blocking it.

Is BlueMap laggy?

The README states that BlueMap renders asynchronously and will not block the server thread directly, so a server should not slow down while it renders as long as the CPU is not fully utilized. On a host where the CPU is already saturated, the render work still competes for cycles.

Is BlueMap a mod?

It is available as a Fabric or Forge mod, and also as a Spigot/Paper or Sponge plugin and as a standalone command-line tool that runs without a server.

How do I access my BlueMap?

The generated map is displayed by BlueMap's web app, which you open in a browser. The README links a public demo map at bluecolored.de/bluemap, and the wiki's installation instructions cover getting your own instance running.

How do I install BlueMap?

Download a release from the GitHub releases page and follow the wiki's installation instructions for your platform. If you build from source instead, clone with `git clone --recursive` and run `./gradlew release`, which puts the JAR files in `./build/release`.

Official sources

  1. BlueMap-Minecraft/BlueMap on GitHub
  2. License: MIT
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/bluemap-minecraft-bluemap.svg)](https://hysenlabs.com/projects/bluemap-minecraft-bluemap)