vccs
Vue 3용 차트 컴포넌트 모음, Recharts에서 포팅
순수 Rust로 만든 빠르고 무료이며 오픈소스인 GIS로, 데스크톱과 브라우저에서 지리 데이터를 매핑·분석·공유합니다
A fast, free and open-source GIS in pure Rust for mapping, analyzing and sharing geospatial data, on the desktop and in the browser
데이터Rust · PythonGitHub @opengeos온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
SNS에서 화제 · 지금 25위 · 출처 1곳
10월 30일 05:46 확인 · 점수는 각 플랫폼이 보여 주는 값을 마지막 확인 시각에 옮긴 것입니다. 글 본문과 댓글은 옮기지 않고, 원문이 지워지면 여기서도 빠집니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기A fast, free and open-source GIS in pure Rust.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗rustgis-cli, chain it in notebooks and models, use completion in the Script pane, or ask the
AI Assistant to run it for you.Every screenshot is RustGIS itself, rendered offscreen by cargo run -p rustgis-ui-egui --example ui_shot.
| Area | Highlights |
|---|---|
| Data | GeoJSON, CSV/TSV with x/y columns in any coordinate system or WKT geometry, Excel and OpenDocument spreadsheets, GeoRSS, LandXML, encoded polylines, Shapefile (zipped too, in the browser as well), GeoPackage, GeoParquet, FlatGeobuf, KML/KMZ (with styles), GPX, GML, MapInfo MIF/MID, OpenStreetMap PBF, TopoJSON, AutoCAD DXF, LiDAR point clouds (LAS, LAZ, COPC) and geotagged photos (large files are read in place), files by their web address, every vector format GDAL reads when it is installed, Esri File Geodatabases without GDAL (desktop), PostGIS, MySQL, MariaDB and SQL Server tables read live (desktop), and SQL queries and DuckDB databases through DuckDB Spatial when DuckDB is installed; PMTiles archives (web or file) and MBTiles files; GeoJSON, CSV, GeoPackage, GeoParquet, Shapefile, FlatGeobuf, KML/KMZ, GPX and WKT out; standalone tables; reusable connections; supported QGIS projects and layer styles; layer and map files, styles, templates and packages |
| Rasters | GeoTIFF and cloud-optimised GeoTIFF (any pixel type, tiled or striped, compressed), ASCII grids, Zarr 2 and 3 stores (a variable at a time step, by folder or web address), and JPEG 2000, NetCDF, HDF, ERDAS Imagine and the other rasters GDAL reads when it is installed (desktop); reprojection from any EPSG code; Stretch, RGB, Classify, Unique Values, Colormap and Shaded Relief; DRA, band combinations, brightness/contrast/gamma; raster functions, indices, change detection, classification, georeferencing; cloud-optimised GeoTIFF export; data cubes, point time-series charts, temporal summaries and trends |
| Maps | Multiple maps and layouts per project, renamed and duplicated from the Browser pane; tilt, rotation, terrain and a 3D globe; maps of the Moon, Mars and other celestial bodies; Web Mercator or any projection (Equal Earth, Robinson, Winkel Tripel, polar and regional presets, or an EPSG code); bookmarks, extent history, coordinate navigation; five offline basemaps, with borders in two worldviews |
| Web services | WMS, WMTS, WFS, OGC API Features and ArcGIS REST (FeatureServer, MapServer, ImageServer, VectorTileServer) from their capabilities |
| Web tiles | XYZ/TMS/WMS raster tiles, Mapbox Vector Tiles and MapLibre styles (sprites, patterns, expressions), cached and fetched in the background |
| Cartography | Single symbol, unique values, graduated colours, proportional symbols; label classes with SQL queries, straight and curved line placement, installed font families, scale ranges and annotation; stacked and dashed line strokes, symbol levels, reference scales and polygons without fill; masking, display filters, aggregation bins, 2.5D extrusion; graphics and dynamic text |
| Editing | Create, move, rotate, scale, merge, split and explode features; snapping, templates, elevation, traverse, topology rules; domains, subtypes, attribute rules, relationships, archiving; undo for everything |
| Analysis | Selection by attributes (SQL) and location; Buffer, Near, Clip, Erase, Split, Intersect, Identity, Union, Symmetrical Difference, Update, Dissolve, Summarize Within, Summary Statistics, Pivot Table, Spatial Join, Zonal Statistics, A5 grids and a geometry calculator; viewshed, line of sight, IDW, ordinary kriging, shortest path, suitability modelling; ModelBuilder on a node canvas and scripts with command, parameter and value completion; 1,000+ GeoLibre and Whitebox raster, vector, LiDAR, hydrology and terrain tools |
| Imagery | Ortho and reality mapping, pixel classification (k-means, minimum distance, a trainable neural network), mensuration, hosted imagery tiles |
| Layouts and reports | Page layouts with map frames, legends, scale bars, grids and map series; publication sheets and figures in one command, format panes, guides, snapping and element locks; reports with groups, statistics, charts and subreports; presentations (HTML slideshow, PDF); notebooks (Jupyter in and out) |
| Sharing | PNG export at any DPI; PDF; web map pages, OGC API Features collections, MapLibre styles, glTF scenes, locators; project, map and mobile map packages; offline areas with sync |
| AI Assistant | Ask about your data or tell the map what to do in plain language, with Anthropic, OpenAI (a key, or your ChatGPT plan by signing in), Gemini, OpenRouter, Ollama or any OpenAI-compatible model; also rustgis-cli ask, and an MCP server (rustgis-cli mcp) for Claude Code, Cursor, VS Code and other agents |
| Plugins | Sandboxed WebAssembly plugins add commands, tools and ribbon tabs; install them from plugins.rustgis.app on the desktop, command line and web |
| Interface | Layers, Browser and Data Sources panes as tabs, command search (Ctrl+K), keyboard shortcuts, dark mode, a customizable ribbon and Quick Access Toolbar, linked side-by-side maps, 19 languages |
The user guide covers each area in detail, Comparison sets RustGIS beside GeoLibre, QGIS and ArcGIS, and ROADMAP.md lists what's next.
winget install OpenGeos.RustGIS,
brew install --cask opengeos/rustgis/rustgis, yay -S rustgis-bin (AUR), or
sudo dnf copr enable giswqs/rustgis && sudo dnf install rustgis (Fedora).cargo run --release -p rustgis (Rust 1.90 or later).cargo run --release -p rustgis # the desktop app with the World Atlas sample
cargo run --release -p rustgis -- data.geojson # open data (or a .rgis project)
Command line: every ribbon action is a command with an id.
rustgis-cli commands # all command ids and parameters
rustgis-cli render countries.geojson map.png --basemap ocean
rustgis-cli run --sample \
--cmd 'gp.run={"tool":"countPoints","params":{"polygons":"Countries","points":"Cities"}}' \
--cmd 'layer.symbology={"layer":"Countries_Summarize","type":"graduated","field":"point_count"}' \
--cmd 'share.exportMap={"path":"out.png","dpi":192}' --save atlas.rgis
rustgis-cli ask --sample "Which 5 countries have the largest GDP?"
claude mcp add rustgis -- rustgis-cli mcp --sample # RustGIS as an MCP server for AI agents
See Command Line for more.
Python: the same engine and commands in-process (pip install rustgis), and the app itself in a
Jupyter notebook.
import rustgis
s = rustgis.Session(sample=True)
s.run("gp.run", tool="buffer", params={"input": "Cities", "distance": 100})
s.to_png("map.png")
gdf = s.layer("Cities_Buffer").to_geopandas()
See Python and the getting-started notebook (open in Colab).
Layered crates, each depending only on the ones below it:
| Layer | Crate | Job |
|---|---|---|
| L0 | rustgis-geom | coordinates, extents, Web Mercator, geodesic distance/area, scale |
| L1 | rustgis-data | features and typed attributes; GeoJSON, CSV, Shapefile, KML, GPX and more; GeoPackage, GeoParquet, FlatGeobuf, LiDAR, PostGIS and MySQL providers; GDAL formats and DuckDB queries through their programs; SQL where clauses; rasters (GeoTIFF, ASCII grid, Zarr) and their coordinate systems |
| L2 | rustgis-map, rustgis-analysis | layers, symbology, labeling, camera, basemaps; geoprocessing (on geo) |
| L2 | rustgis-tiles | web map tiles: XYZ/TMS/WMS, Mapbox Vector Tiles, PMTiles and MBTiles archives, MapLibre styles, the tile cache |
| L3 | rustgis-render | tiny-skia renderer, label placement, PNG export, fonts |
| L3 | rustgis-plugins | sandboxed WebAssembly plugins and the plugin registry |
| L3 | rustgis-geolibre | the GeoLibre tool suite as geoprocessing tools |
| L4 | rustgis-engine | session, undo, command registry, sample project |
| L5 | rustgis-assistant | the AI Assistant: a chat agent that acts through commands |
| L6 | rustgis-ui-egui | the ribbon front end (swappable) |
| apps | rustgis, rustgis-cli, rustgis-web, rustgis-python | desktop, command line, browser (WebAssembly), the rustgis Python package |
cargo xtask ci runs formatting, clippy, the tests and the layering check. Contributor and
agent notes: AGENTS.md.
RustGIS is free and open source, and stays that way. If it is useful to you or your team, sponsorship is the most direct way to keep development, hosting and cross-platform distribution going.
See the Become a Sponsor page for what sponsorship supports and for other, free ways to help.
If you use RustGIS in your work, please cite it. RustGIS is archived on Zenodo, which mints a DOI for every release. The concept DOI below always resolves to the latest version.
Wu, Q., Rincón Albarracín, J. G., Filho, E., Hofbauer, D., Fitzgerald, M., & Strebel, D. (2026). RustGIS: A fast, free and open-source GIS in pure Rust for mapping, analyzing and sharing geospatial data. Zenodo. https://doi.org/10.5281/zenodo.23633281
You can also use GitHub's "Cite this repository" button (which reads CITATION.cff) to copy a ready-made APA or BibTeX entry. See the How to Cite page for more formats.
RustGIS builds on the work of many projects and their authors: QGIS, ArcGIS Pro and GDAL, the GIS it is measured against; MapLibre and PROJ; the GeoLibre tool suite, after John Lindsay's WhiteboxTools; OpenFreeMap for vector basemaps; Natural Earth, OpenStreetMap, Overture Maps and the EPSG dataset; and the Rust crates it is made of, among them egui, wgpu, tiny-skia, geo, proj4rs, tiff, Apache Arrow and Parquet, rusqlite and wasmi. See the acknowledgements for the full list, and ATTRIBUTION.md for every asset's source and licence.
RustGIS is primarily built with Claude Opus 5.5, an AI model by Anthropic, working under human direction and review. Its results are tested, but check them for your own use, and please report anything that looks wrong.
Licensed under the Apache License 2.0. Sample data from Natural Earth (public domain).