英文原文: https://argusic.com/best/maps

开源地图服务器和工具,已安装并运行

可自行运行的地图服务器和地图工具。列表按 Argusic 在全新机器上安装每个项目时是否成功运行来排序,点击即可查看该次尝试的录屏。

测试时间为 2026年9月26日 至 2026年11月2日。每一行都注明了各自的测试日期;项目在那一天之后可能发生变化。

35 个已测试项目中有 34 个可运行。另有 6 个正在等待测试。

简而言之: 在 35 个已测试项目中,有 29 个在全新机器上直接启动:arnis、graphhopper、photon、headway、timezone-boundary-builder、geo-three、Aleph 和 OSM2World,以及另外 21 个项目。另有 5 个在用替身替换其依赖的服务(例如数据库)后启动:osmnx、tilemill、tasking-manager、geo-golang 和 web-app。1 个无法验证:motis;log 显示了它停在哪里。

每一次都由 Argusic 在全新机器上实测。 每个数字都链接到对应的证据。

#项目结论Argusic 评分语言星标数测试日期
1arnis可运行100 / 100Rust18,5292026年11月2日

在 Minecraft 中高细节地生成真实世界的任意位置。

测试发现:arnis 3.2.0 CLI binary builds and runs, its test suite passes 1189/1189 tests with zero errors. 10 分钟。

2graphhopper可运行100 / 100Java6,7552026年9月28日

OpenStreetMap 的开源路由引擎。可作为 Java 库使用,也可作为独立 Web 服务器运行。

测试发现:GraphHopper 12.0-SNAPSHOT builds from source, all tests pass (0 failures), and the web server serves valid car/foot/bike routes on port 8989 using the bundled Andorra OSM data. 37 分钟。

3photon可运行100 / 100Java3,1732026年10月1日

一个用于 openstreetmap 数据的开源地理编码器

测试发现:Java 21 installed, project builds, all 539 tests pass against embedded OpenSearch instance. 9 分钟。

4headway可运行100 / 100Rust3,0132026年10月2日

基于 OpenStreetMap 的自托管地图栈。

测试发现:Rust workspace builds and all unit tests pass; travelmux-server launches and responds 200 on health endpoints; frontend vitest suite passes 44/44 tests with Node 22.22.0; pelias generate_config tests pass 6/6; Docker unavailable blocks full-stack integration tests. 10 分钟。

5timezone-boundary-builder可运行100 / 100JavaScript1,1352026年10月10日

一个用于从 Open Street Map(OSM)提取数据以构建世界时区边界的工具。

测试发现:npm install succeeds, lint tests pass, and the main script downloads real OSM boundaries to produce valid GeoJSON polygon data. 2 分钟。

6geo-three可运行100 / 100TypeScript9622026年10月11日

基于瓦片的地理世界地图可视化库,用于 threejs

测试发现:geo-three installs, builds, and renders 3D map tiles via three.js in headless Chrome; all major modes (PLANAR, HEIGHT, SPHERICAL, HEIGHT_SHADER), LOD strategies (Raycast, Frustum, Radial), and coordinates conversions work correctly. 8 分钟。

7Aleph可运行100 / 100Python7992026年10月27日

将卫星影像、地形数据、建筑物和街景照片提供给您的 LLM

测试发现:Install, all 38 unit tests, CLI help, place resolution, Street View download, satellite download, and dashboard server all succeed with no errors. 2 分钟。

8OSM2World可运行100 / 100Java7942026年10月14日

从 OpenStreetMap 数据创建世界三维模型的转换器

测试发现:OSM2World 0.5.0-SNAPSHOT builds, passes all 808 tests, and successfully converts real OSM data into a 2.3 MB valid binary glTF 3D model file. 20 分钟。

9osmtogeojson可运行100 / 100JavaScript7512026年10月14日

将 OSM 转换为 GeoJSON

测试发现:The repo builds and runs: dependencies installed, full test suite passes (64 + 85 assertions), and the osmtogeojson CLI converts a sample OSM XML file into valid GeoJSON. 1 分钟。

10mini-macau可运行100 / 100-6392026年10月16日

澳门公共交通与航空的三语 3D 可视化:轻轨、巴士、渡轮及 MFM 机场航班,附带基于时刻表的模拟

测试发现:With a user-local Node 22 on PATH, npm install, npm test (952 passed), npm run build, npm run lint, the Vite dev server and production preview all work, and the LRT API answers 200 with valid 120-second vehicle windows. 14 分钟。

11map-machine可运行100 / 100Python5722026年10月18日

用于 OpenStreetMap 的 Python 渲染器,带有自定义图标,旨在尽可能多地显示地图要素

测试发现:The Map Machine Python package is installed in a venv, all 148 tests pass, and the render, icons, and version commands produce valid output. 7 分钟。

12fable51-worlds可运行100 / 100JavaScript5282026年10月19日

worlds via code,来自 fable 5.1

测试发现:Three Three.js worlds (Kyoto Higashiyama, Death Star Trench Run, Union Square SF) install from npm, build with vite, serve via vite dev server at HTTP 200, and render interactive 3D scenes in Playwright headless Chromium. 64 分钟。

13osm可运行100 / 100Go4712026年10月20日

用于读取、写入和处理 OpenStreetMap 数据的通用库

测试发现:All 11 Go packages under github.com/paulmach/osm build and pass their tests with CGO disabled: osm, annotate, annotate/internal/core, internal/mputil, osmapi, osmgeojson, osmpbf, osmtest, osmxml, and replication. 2 分钟。

14pyrosm可运行100 / 100Python4412026年10月21日

使用 Python 从 Protobuf 文件读取 OpenStreetMap 数据到 GeoDataFrame,速度更快。

测试发现:pyrosm 0.13.1 builds and installs from source, all 605 tests pass, and all five OSM data layers (network, buildings, POI, landuse, natural) parse correctly from the bundled test PBF extract. 29 分钟。

15pyosmium可运行100 / 100Python3992026年10月22日

libosmium 的 Python 绑定

测试发现:Pyosmium 4.3.1 is built and installed in a virtualenv at /tmp/dev-venv; imports successfully, processes real OSM XML and PBF files correctly, all 401 tests pass, and the pyosmium-get-changes CLI tool reports version 4.3.1. 20 分钟。

16go-staticmaps可运行100 / 100Go3832026年10月22日

一个用 Go (golang) 编写的库和命令行工具,用于使用 OpenStreetMap 瓦片渲染静态地图图像。

测试发现:The go-staticmaps library builds, all 2 unit tests pass, and the create-static-map CLI compiles and renders valid PNG images with OSM tiles, markers, and background colors. 2 分钟。

17versatiles-rs可运行100 / 100Rust3312026年10月24日

VersaTiles 工具包的核心 Rust 实现,用于转换、验证和提供多种格式的地图瓦片。

测试发现:versatiles 4.15.0 builds, installs, passes all 5137 tests, probes metadata from .mbtiles containers, converts between tile container formats, and serves tiles via HTTP with correct MVT responses. 23 分钟。

18walkers可运行100 / 100Rust2902026年10月26日

用于 egui 的滑动地图(OpenStreetMap)组件

测试发现:Rust 1.95.0 toolchain is installed, the walkers workspace compiles cleanly, all 105 tests pass, and the demo_native binary launches on Xvfb, initializing the wgpu renderer via Mesa llvmpipe and rendering a slippy map window with real OSM tiles. 26 分钟。

19OSMExpress可运行100 / 100C++2752026年10月26日

用于 OpenStreetMap 的快速数据库文件格式

测试发现:osmx C++ binary builds, runs expand/query/extract on real OSM data, test suite passes (27/27), Python osmx package installs and reads databases correctly. 14 分钟。

20python-overpy可运行100 / 100Python2662026年10月27日

用于访问 Overpass API 的 Python 封装

测试发现:overpy 0.7 is installed in a project venv, its full test suite passes (63/63), and the package answers Overpass queries with correctly parsed JSON responses. 1 分钟。

21mapwarper可运行100 / 100Ruby2222026年10月30日

免费开源公共地图地理配准、几何校正与扭曲工具

测试发现:Ruby 2.4.0 Rails 4.2 app running tests against live PostgreSQL 16 + PostGIS 3.4 + GDAL 3.8.4; 94 tests pass, 0 errors, 0 infrastructure-related failures. 36 分钟。

22geodesk可运行100 / 100Java2032026年10月31日

快速且存储高效的空间数据库引擎,适用于 OpenStreetMap 数据

测试发现:GeoDesk 2.1.0 builds from source with Maven and all 28 unit tests pass on JDK 17 on x86-64 Linux. 3 分钟。

23geo-sleuth可运行95 / 100Python5,9512026年10月8日

一个 agent 技能,用于找出照片拍摄地点(通过 OpenStreetMap 几何数据、海拔天际线、卫星图像和街景),并展示其推理过程。可与 Claude Code、Codex、Cursor、Gemini CLI、OpenCode 和 GitHub Copilot 配合使用。

测试发现:uv was installed into a venv and every script's dependencies resolved via uv run; the geo-sleuth skill's core scripts (clues, geo, board, sun, exif, imgprep, terrain, tiles, evidence, ocr, match, sat_scan, intake, baidu_pano) all executed real end-to-end runs with decoded media output, two input edge-case bugs were... 23 分钟。

24quackosm可运行90 / 100Python3802026年10月23日

QuackOSM:一个开源的 Python 和 CLI 工具,用于使用 DuckDB 读取 OpenStreetMap PBF 文件。

测试发现:QuackOSM 0.18.2 installed and running. End-to-end PBF→GeoParquet conversion works on the Monaco test file (7937 features). Tag filtering, WKT conversion, sorting, and CLI modes all function correctly. 30+ tests pass. 7 tests fail due to 8 GB cgroup memory limit being insufficient for the 747+ column keep_all_tags=True... 70 分钟。

25geo-downloader可运行75 / 100Rust4332026年10月21日

GeoD:免费开源的地理空间数据下载器,支持 OpenStreetMap/XYZ 瓦片、GeoTIFF、3D Tiles 和 Esri Wayback。支持 Windows、macOS 和 Linux。

测试发现:Frontend builds and all 34 JS tests pass; Rust backend builds and all 121 unit tests pass; the binary exists but cannot launch its GUI (no WebKitNetworkProcess helper, requires root to install). 50 分钟。

26maptoposter可运行60 / 100Python14,2742026年9月26日

将你喜爱的城市转化为精美的极简设计。MapToPoster 让你可以通过代码创建并导出视觉惊艳的地图海报。

测试发现:Install completes with no errors, flake8 passes, and the script generates valid map poster PNGs from live OpenStreetMap data via Nominatim geocoding and OSMnx for any city/country pair across all 17 themes, with Google Fonts i18n support confirmed working. 6 分钟。

27VoxCity可运行60 / 100Python5842026年10月18日

用于整合地理空间数据、3D 城市建模和城市模拟的 Python 框架。

测试发现:VoxCity 1.7.0 installs in a pip-only venv, passes its full test suite (3021 passed, 16 skipped), and ran a real end-to-end Tokyo data pipeline plus CPU/GPU solar simulations and OBJ/VOX/INX/CitiLES/NetCDF/HDF5 exports. 19 分钟。

28sightline可运行60 / 100TypeScript5752026年10月18日

一个用于从 OpenStreetMap 数据绘制现实世界基础设施的 OSINT 搜索引擎

测试发现:npm install and next build succeed; dev server starts on port 3000, homepage serves 200, and the search API returns real OpenStreetMap infrastructure data via Nominatim geocoding and Overpass API queries. 12 分钟。

29silver-tourism-digital-twin可运行60 / 100JavaScript1872026年10月31日

语义数字孪生与 500-agent 仿真实验室,用于历史街区的老年友好研究。

测试发现:The Silver Tourism Digital Twin Studio v3.5.0 web application and API server run on port 8092, serving the pre-built frontend, handling OSM place searches via public Nominatim API, supporting scientific figure generation via Python matplotlib/numpy backend, and serving all static assets with correct content types. 5 分钟。

30osmnx借助 mock 可运行92 / 100Python5,8892026年9月29日

从 OpenStreetMap 下载、建模、分析和可视化街道网络及其他地理空间要素。

测试发现:OSMnx 2.1.1 installed via uv from source; 15/17 pytest suite tests pass with a local mock Overpass server; the source bug in elevation.py (0-d array) was patched; the remaining two test failures are due to mock data not matching real OSM attribute richness. 75 分钟。

31tilemill借助 mock 可运行92 / 100JavaScript3,1482026年10月1日

TileMill 是一个现代地图设计工作室

测试发现:Server starts on ports 20008/20009, responds HTTP 200 on all endpoints, 24 of 30 mocha tests pass including config CRUD, project CRUD, abilities, export create/delete, and duplicate module detection for sqlite3/mapnik. 39 分钟。

32tasking-manager借助 mock 可运行92 / 100Python6102026年10月17日

Tasking Manager: 用于在 OpenStreetMap 上协作绘制地图的工具

测试发现:FastAPI backend (Python 3.10, uv-managed) starts successfully on port 5000 against an embedded PostgreSQL 18.6 database, serving the Tasking Manager API with 149 endpoints and Swagger UI documentation. 26 分钟。

33geo-golang借助 mock 可运行92 / 100Go5472026年10月18日

用于访问地理编码和反向地理编码 API 的 Go 库

测试发现:The geo-golang geocoding framework builds and all 21 test suites pass using httptest mock servers, with no external API keys required. 4 分钟。

34web-app借助 mock 可运行92 / 100TypeScript2702026年10月27日

这是正在运行的演示 Web 应用。

测试发现:All 854 unit tests and all 22 Playwright e2e tests pass; vite dev server answers HTTP 200 on localhost:3000. 10 分钟。

35motis无法验证0 / 100C++6222026年10月17日

多模式路线规划、地理编码和地图瓦片

测试发现:无法验证;log 显示了它停在哪里。 87 分钟。

-openinframap尚未验证-TypeScript698-
-osrm-backend尚未测试-C++8,192-
-planetiler尚未测试-Java2,239-
-osgearth尚未测试-C1,819-
-sms尚未测试-Python269-
-timeshape尚未测试-Java208-

可运行 使用真实的依赖项完成安装并启动。 借助 mock 可运行 用替身替换数据库或第三方 API 等外部服务后启动。 无法验证 标准 agent 和更强的 agent 都没能在时间限制内让它运行起来;log 显示了它停在哪里。

我们如何测试

截至最近一次测试,本榜单中:29 个项目直接运行,5 个借助 mock 运行,1 个无法验证,6 个仍在等待。已测试的语言:C++、Go、Java、JavaScript、Python、Ruby、Rust、TypeScript。每次尝试都使用一台干净的一次性机器、固定版本的项目,以及 45 分钟的时间限制;完整流程见方法论页面。

常见问题 (FAQ)

本榜单是如何排名的?

依据测量结果,而不是观点:Argusic 在全新机器上安装并启动成功的项目排在最前,然后是用 mock 代替外部服务后运行的项目,再然后是无法验证的项目。结果相同时比较 Argusic 评分,再比较项目在其自身来源上的热度。

为什么有些项目没有排名?

6 个项目仍在等待测试或等待一次完整的尝试。在 Argusic 完成测量之前,它们会被列出但不参与排名。

证据在哪里?

每一行都链接到该项目的 Argusic 页面,其中每次运行都有完整的 log 和终端录屏,并连同 sha256 指纹一起保存。每个已测试项目都有这样的页面,无论它是否在本榜单上。

同一类别的更多榜单

所有榜单: Best. 所有已测试项目: 项目.