Skip to content

Introduction

Conness GIS is an open-source, code-driven framework for building widget-based GIS web apps on MapLibre GL JS. It's a clone-and-edit alternative to proprietary GIS app builders: instead of dragging boxes around a builder UI, you describe your app in a handful of configuration files and the framework assembles the rest. It's mobile-ready out of the box.

The eventual goal is a full UI for the settings and configuration files, so all you'll need to do is fill out a few form fields to organize your app, build it, and deploy.

What you get

Out of the box, a cloned project gives you a complete mapping application:

  • Declarative layers — point, line, and polygon data from GeoJSON, PMTiles, FlatGeobuf, GeoParquet, and ArcGIS REST services, all configured as plain objects.
  • A widget system — a layer list, legend, basemap switcher, search, measure, draw, bookmarks, and live coordinates — placed wherever you want them (top bar, side rail, or floating over the map).
  • Feature popups — opt-in per layer, rendered by templates you control.
  • A mobile layout — the same app reflows into a bottom-sheet UI on small screens, automatically.
  • One-palette theming — change a single color token and the whole app re-skins.
  • A responsive shell — top bar, collapsible side panels, floating controls, a right-click context menu, and a boot-time loading overlay.

The core idea

The project is split into two halves:

  • The shell (app/src/) is framework code. You rarely touch it.
  • The user surface (the files at the root of app/) is yours: settings.ts, layers.ts, symbology.ts, popups.tsx, info.md, and the widgets/ folder. Your layer datasets live in the layers/ folder.

Widgets are the interactive UI boxes your users work with — find my location, search, query data, draw geometries, and so on. Conness GIS is built to be flexible: use the pre-built widgets, extend them, or build your own from the ground up. No fussing with centering and styling. See Creating a Widget for more.

You build your app entirely in the user surface; the shell reads it and renders. This boundary is what makes Conness GIS a template rather than a one-off app — see Concepts for how it fits together.

Uses

Core

Geospatial

UI & content

Ready to run it? Head to the Quick Start.