QGIS: A Free GIS for Desktop, Server and Docker
QGIS is a free, open source, cross platform (lin/win/mac) geographical information system (GIS)
At a glance
- What is it?
- QGIS is a GPL-2.0 geographical information system built in C++ that runs on Linux, Windows and macOS. It reads raster, vector, mesh and point cloud data through GDAL, OGR and MDAL, and it ships both a desktop application and a server component.
- Who is it for?
- Adopt QGIS if you need a desktop GIS that reads industry formats without a licence fee, or if you want to serve WMS and WFS from the same project files. Do not adopt it expecting a managed cloud product: the README describes local software and a server component, and the related searches for QGIS Cloud point at something the repository does not document.
- Can I use it commercially?
- Yes, with conditions. GPL-2.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 1 day ago.
- What is it written in?
- Mainly C++, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 29, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What QGIS solves, and who ends up using it
The problem is straightforward: geospatial work has historically meant expensive proprietary licences, and the free tools that existed were either command line utilities or thin viewers. QGIS is a full desktop application that opens raster, vector, mesh and point cloud data, and lets you edit, style, analyse and export it. The README calls it a "full-featured, user-friendly, free-and-open-source (FOSS) geographical information system (GIS) that runs on Unix platforms, Windows, and MacOS."
The audience is broad but specific. Cartographers who need control over symbology and layout. Analysts who need to run geoprocessing and see results immediately. Database people who work against PostGIS, SpatiaLite, SQL Server, Oracle or SAP HANA and want a client that treats those sources as first-class layers rather than imports. And developers who need a Python or C++ entry point into geospatial processing without building a GDAL wrapper from scratch.
One thing worth noting from the README: it claims "near-complete replication (and significant extension) of symbology options that are available in proprietary software by ESRI." That is a direct claim in the project's own documentation, not an independent measurement. Treat it as the project's stated goal, and check it against the specific symbology you depend on.
How QGIS handles data: GDAL, OGR and MDAL under one model
QGIS does not implement format readers itself. It sits on top of three libraries: GDAL for raster, OGR for vector, and MDAL for mesh. The README lists the formats each layer covers: GeoPackage, GeoTIFF, GRASS, ArcInfo binary and ASCII grids, ERDAS Imagine, SDTS, WMS and WCS on the raster side; GeoPackage, ESRI shapefiles, GRASS, SpatiaLite, PostgreSQL/PostGIS, MSSQL, Oracle, WFS and vector tiles on the vector side; NetCDF, GRIB and 2DM for mesh; LAS/LAZ and EPT for point clouds.
The consequence is that QGIS's format coverage is really GDAL's and OGR's format coverage. When the README says "other GDAL supported formats" and "other OGR supported formats," it is pointing you at those upstream driver lists. If a format is not there, QGIS will not read it, regardless of what the QGIS plugin ecosystem offers.
Above the drivers sits a data abstraction layer. Local files, spatial databases and web services are all accessed "through a unified data model and browser interface, and as flexible layers in user-created projects." That is the design decision that matters most in daily use: a PostGIS table and a shapefile on disk behave similarly once loaded, which is why mixing sources in one map is routine rather than a special case. On-the-fly reprojection between coordinate reference systems means layers in different CRS can sit in the same view.
Installing QGIS and running a first analysis
The README does not give install commands. It has an "Installing and using QGIS" section that points to the project's documentation and support channels, and the homepage is https://qgis.org. Binary installers for Windows and macOS and packages for Linux distributions are distributed from there, not from the repository. Building from source is a separate path: the repository root contains INSTALL.md, CMakeLists.txt and a vcpkg/ directory, which is what you would follow for a source build.
For a container, the README links a Docker badge to the qgis/qgis tags on Docker Hub. The repository also carries a .docker/ directory. The exact image tag and run command are not documented in the README, so check the Docker Hub tags page before pulling.
The Python side is easier to pin down. The repository's requirements.txt lists the dependencies used by the Python test and tooling layer:
termcolor
mock
nose2
psycopg2
numpy
pyyamlThose are development dependencies, not runtime ones. If you are writing scripts against the QGIS Python API, the interpreter that ships with the QGIS install is the one that has the bindings; a system Python with these packages installed will not give you the QGIS modules.
Once the application is open, the practical first step is to load a layer and confirm the processing framework sees it. The README states there are "200+ native processing algorithms" plus "1000+ processing algorithms via providers such as GDAL, SAGA, GRASS, OrfeoToolbox, as well as custom models and processing scripts." Whether SAGA, GRASS or Orfeo Toolbox algorithms appear in your installation depends on which providers are enabled and installed, so check the provider list rather than assuming all of them are present.
The parts of QGIS that are not the desktop application
QGIS Server is a distinct component. The README gives it its own section, and the related searches include "qgis qgis server" and "qgis qgis server docker," which suggests people are looking for a deployment path rather than a desktop feature. The value proposition is that a QGIS project file, with its layers and styling already configured, can be published as a service. The README lists WMS, WCS, WFS and ArcGIS REST among the web services QGIS can consume as a client; the server side publishes rather than consumes.
This is where the architecture gets interesting for teams. The same project that a cartographer styles on the desktop becomes the server's configuration. That removes a translation step, but it also means a project file is now production infrastructure. A broken layer path or a missing font affects the published service, not just someone's local view.
QGIS also has a plugin ecosystem, linked from the README at plugins.qgis.org. Plugins extend the application, and the README groups this under "customization and extensibility" alongside the expression engine and the customizable user interface. Plugins are third-party code; the project does not vouch for their maintenance in the README.
Where QGIS is the wrong choice
QGIS is desktop software. If your requirement is a hosted web map that non-technical users open in a browser with no installation, QGIS alone does not provide that. The related searches surface "QGIS Cloud," which is not described anywhere in the README or the repository listing. Do not assume the repository ships a cloud service; the material documents a desktop application and a server component.
Second, if your work depends on a format that GDAL, OGR or MDAL does not implement, QGIS cannot help. The README defers to those upstream driver lists, and no plugin layer changes what the underlying library can parse.
Third, the processing framework is not a distributed compute engine. The README describes a model designer, batch processing and access to external providers, but nothing about clustering or parallel execution across machines. Large raster operations run where you run them.
Fourth, there is a real cost to the plugin ecosystem. Plugins are written by third parties, and the README does not make any statement about their longevity or compatibility across QGIS releases. A workflow built on a plugin is a workflow with a dependency the core project does not control.
QGIS compared with ArcGIS and with script-only GDAL use
The search question "Is QGIS the same as ArcGIS?" has a clear answer: no. They are different products from different vendors. The README explicitly frames QGIS's symbology work as replicating and extending what is "available in proprietary software by ESRI," which is an acknowledgement that ArcGIS is the reference point users bring with them. The practical difference is licensing and ecosystem. QGIS is GPL-2.0 and free to install; ArcGIS is commercial. That difference cuts both ways. Commercial GIS platforms typically come with vendor support contracts, and QGIS's README points to community help and support channels instead.
The more instructive comparison is with using GDAL directly. GDAL is a library and a set of command line tools. QGIS embeds it. If your task is a scheduled reprojection of a hundred GeoTIFFs with no human in the loop, a GDAL command line script is simpler and has fewer moving parts than driving the QGIS application. QGIS earns its place when you need to see the data, adjust styling, inspect results interactively, or build a repeatable model in the model designer. The README's own framing supports this: it advertises "immediate visualization of geospatial query and geoprocessing results," which is a statement about the interactive loop, not about headless throughput.
Releases, licensing and what upgrades cost
The repository is not archived, and the last push was on 2026-09-21. Recent releases listed are 4.2.2 and 3.44.14, both dated 2026-08-28, with 4.2.1 before them on 2026-07-31. That pattern, a 4.x line and a 3.44 line released on the same day, is the LTR structure the related searches refer to with "qgis qgis ltr." The README's "Versions and release cycle" section is the place to read the project's own description of how those lines relate.
The upgrade cost depends on which line you are on. Staying on the LTR line means fewer feature changes and a longer support window. Moving to the 4.x line means new functionality and a faster cadence. For organisations with plugins or custom processing scripts, the version choice is really a question about whether those extensions have been updated for the target release, and the README does not make any promise on that front.
On licensing: QGIS is GPL-2.0, and the repository carries COPYING plus an Exception_to_GPL_for_Qt.txt file. The GPL is a copyleft licence, which has implications if you distribute modified QGIS or link it into your own product. The Qt exception exists precisely because linking against Qt would otherwise create an obligation the project does not intend. Read COPYING and the exception file, and get your own legal advice for your distribution model; nothing here is legal advice.
Editorial conclusion
Adopt QGIS if you need a desktop GIS that reads industry formats without a licence fee, or if you want to serve WMS and WFS from the same project files. Do not adopt it expecting a managed cloud product: the README describes local software and a server component, and the related searches for QGIS Cloud point at something the repository does not document. Before committing, verify which release line fits your team (4.2.2 or the 3.44 LTR), check the GPL-2.0 obligations against how you distribute your work, and confirm that your target formats appear in the GDAL, OGR or MDAL driver lists the README links to.
Frequently asked questions
What does QGIS stand for?
The project is now known simply as QGIS. One of the related searches is "qgis quantum gis," which reflects the older expansion of the name, but the README and the current branding use QGIS as the product name.
Is QGIS still free?
Yes. The README describes QGIS as "free-and-open-source (FOSS)" and the repository is licensed GPL-2.0, with the licence text in the COPYING file at the repository root.
Is QGIS beginner friendly?
The README describes QGIS as "user-friendly" and states that its interface and application settings cater to both power users and beginners. It also points to documentation and community support channels for people getting started.
Is QGIS the same as ArcGIS?
No. They are separate products. The README positions QGIS's symbology as replicating and extending options available in proprietary software by ESRI, which treats ArcGIS as a comparison point rather than the same tool.
Is QGIS free?
Yes. The README describes QGIS as free-and-open-source, and the repository is licensed GPL-2.0 with the licence text in COPYING.
What is QGIS?
QGIS is a free and open source geographical information system that runs on Unix platforms, Windows and MacOS, supporting raster, vector, mesh and point cloud data.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/qgis-qgis)