// the find
MapServer/MapServer
Source code of the MapServer project. Please submit pull requests to the 'main' branch.
MapServer is a C CGI program for serving geospatial data over WMS, WFS, WCS, and the newer OGC API standards. It's been around since the late 90s (NASA/University of Minnesota lineage) and remains one of the primary open-source options for organizations that need standards-compliant map serving without a Java stack. The target audience is GIS teams maintaining existing MapServer deployments or anyone who needs a battle-tested OGC services implementation.
The OGC API and CQL2 filter support is surprisingly complete — the test suite covers both text and JSON filter syntax, spatial predicates, and proper error handling for edge cases. The CI pipeline is thorough: CodeQL, Coverity, OSS-Fuzz, cppcheck, and platform coverage across Alpine, Ubuntu, and Windows. GDAL as the data backend means you get support for essentially every geospatial format without MapServer needing to implement any of it. The mapfile configuration format is declarative and has decades of documentation and tooling behind it.
It's a CGI program in 2026 — the deployment model is Apache/FastCGI, which means you're wiring up mod_fcgid or similar rather than running a container that binds a port. The mapfile syntax is its own DSL that you have to learn from scratch; there's no escape hatch to configure it programmatically without either generating text files or using MapScript, which adds a binding layer of its own complexity. Stars (1.2k) are low for a project this mature and critical, which reflects that the user base is largely institutional and doesn't star things on GitHub — but it also means community momentum for new features is slow. Getting a working build from source requires satisfying a large tree of optional C library dependencies (GDAL, GEOS, PROJ, Cairo, FriBiDi, ProtobufC...) and the CMake find-modules are custom per-dependency, so build failures on non-standard Linux distributions are common.