00 · Why X-GIS
A compiler, not a config.
Most web-map engines are JavaScript libraries you configure — Mapbox GL and MapLibre from a JSON style spec, deck.gl and Cesium from imperative JS. X-GIS is a different kind of tool: a compiled declarative language. You declare the map, and a real compiler emits the GPU shaders — WGSL and GLSL — from your style.
01 · The Distinction
Three things make it a different category.
A real language
You write a map in .xgis — and a real compiler reads it: lexer → parser → typed IR. Not a JSON style document handed to a fixed renderer, but a program that gets compiled.
lexer · parser · IRShaders compiled from your style
The IR lowers to GPU shaders generated for your style — WGSL and GLSL emitted from the same source, then optimized. Not a fixed shader set you parameterize from the outside.
WGSL + GLSL · optimizedWebGPU-first
The renderer targets WebGPU, with a WebGL2 fallback behind one RHI (render-hardware interface) — the same draw path emits to whichever backend the browser gives you.
WebGPU · WebGL2 · one RHI02 · The Comparison
An honest scorecard.
Conservative cells only — a check where X-GIS genuinely leads, a dash where a tool simply does something different, and a marked Roadmap where X-GIS isn't there yet. The alternatives are excellent; this is about kind, not ranking.
X-GIS is young — terrain, 3D tiles, and custom layers are on the roadmap. Where it's distinctive is the language and the compiler.
03 · The Fit
Who it's for — and not yet for.
The honest cut. X-GIS earns its place on a specific set of priorities; on others, a mature alternative is the right call today.
A good fit
- Teams who want map styling that is declarative, version-controllable, and reviewed like code.
- Anyone who wants the GPU shaders compiled from the style — not bolted on from the outside.
- Projects that want to target WebGPU today, with a WebGL2 fallback for older browsers.
- Apps that need a real ellipsoidal globe, not a textured sphere.
Not yet for
- Teams that need terrain, 3D tiles, or custom three.js layers shipping today — those are on the roadmap, not in the box yet.
- Use cases that demand a battle-tested, mature ecosystem with years of production hardening.
- Full Mapbox style-spec drop-in — coverage is real (176 / 236) but not yet complete.
Next