X-GIS

Mapbox style → xgis

Paste a Mapbox Style Spec JSON, or drop in a URL pointing at a style.json. The result drops straight into the playground.

Try a public style

The page fetches the URL directly in the browser — works for hosts that send Access-Control-Allow-Origin. If the request is blocked, .

Mapbox style spec compatibility

Goal: 100% of the style spec round-trips. Current state below is what the converter knows about — anything else lands in the conversion notes block when present.

Supported
  • • Sources: vector (PMTiles + TileJSON), raster, GeoJSON
  • • Layers: background, fill, line, fill-extrusion
  • • Paint: fill-color/-opacity, line-color/-width/-dasharray/-opacity, fill-extrusion-color/-opacity/-height/-base
  • • Filters: legacy + expression form (==/!=/</>/all/any/in/!in/has/!has)
  • • Expressions: get / coalesce / case / match / arithmetic / min / max / to-number
  • • Zoom: interpolate(zoom, …) with linear curve
Lossy / heuristic
  • interpolate curve type (exponential / cubic-bezier) folded to linear
  • fill-translate, line-translate dropped
  • fill-outline-color emitted as a separate stroke layer when paired
  • $type / $id filters dropped (geometry type implied by utility)
  • • Symbol-style fill-pattern / line-pattern dropped (bitmap atlases unimplemented)
Unsupported (engine)
  • • Symbol layers (text + icons) — SDF font + glyph atlas pending
  • • Circle, heatmap, hillshade, sky layers
  • let / var bindings, concat, downcase, number-format
  • step expressions, at, distance, distance-from-center
  • • Top-level light, fog, terrain
  • • Paint property transition overrides