QGIS plugin to export your project to an OpenLayers or Leaflet webmap.
It replicates as many aspects of the project as it can, including layers, extent and styles (including categorized and graduated).
No server-side software required.
- In QGIS, select
Plugins > Manage and Install Plugins...
or:
- Download and unzip this repo to your QGIS plugins directory
Prepare your map as far as possible in QGIS, as you want it to appear in your webmap. Specific tasks you can carry out to improve your webmap include:
- Set your project title, and background and highlight colours in
Project > Project Properties...
- Give your layers human-friendly names in the
Layers Panel
- Give your layer columns human friendly names via
Layer > Properties > Fields > Alias
- Hide the columns you don't want to appear in your popups by changing their Edit widget to "Hidden"
- If any of your fields contain image filenames, change their Edit widget to "Photo" to have the images appear in popups
- Style your layers, and set their scale-dependent visibility, if required
Run qgis2web from the Web menu, or via its icon. If required, choose a basemap from the list below the preview pane, and click "Update preview". CTRL/CMD-click for multiple basemaps or to deselect a basemap.
The top-left pane lets you set options for each layer in your map. The bottom-left pane sets overall options for your project. All options are written to your QGIS project, so save your project if you want to keep these settings.
More info on the WIKI
qgis2web is among the winners of the OSGeo:UK 2023 competition via GoFundGeo
Please consider a small donation; even a modest "virtual coffee" can help support our commitment to providing quality software.
🎁 As a token of our gratitude, donors will receive as a gift qgis2opengis (a plugin enhancing OpenLayers export of qgis2web).🎁
Thank you for your support!
Happy mapping!🗺️
qgis2web is fundamentally a merge of Victor Olaya's qgis-ol3 and Riccardo Klinger's qgis2leaf. It would not exist without their work. Thank you, gentlemen. Thanks are also very much due to Paolo Cavallini, who suggested and supported the merge.
- @volaya
- @riccardoklinger
- @pcav
Obviously, qgis2web could not exist without the following monumental software:
- QGIS
- OpenLayers
- Leaflet
Thanks are also due for major code contributions to:
- @akbargumbira
- @lucacasagrande
- @walkermatt
- @boesiii
- @ThomasG77
- @NathanW2
- @nyalldawson (FTP export for Faunalia/ENEL)
- @perliedman
- @olakov
In addition, the following libraries have been used:
- [ol-layerswitcher](https://github.com/walkermatt/ol-layerswitcher), by @walkermatt
- [Autolinker.js](https://github.com/gregjacobs/Autolinker.js), by @gregjacobs
- [requestAnimationFrame polyfill](https://gist.github.com/paulirish/1579671), by @paulirish
- Function.prototype.bind polyfill, by @mozilla
- [Leaflet.label](https://github.com/Leaflet/Leaflet.label), by @jacobtoye
- [Leaflet.Locate](https://github.com/domoritz/leaflet-locatecontrol), by @domoritz
- [Leaflet.markercluster](https://github.com/Leaflet/Leaflet.markercluster), by @danzel
- [leaflet-measure](https://github.com/ljagis/leaflet-measure), by @ljagis
- [leaflet-hash](https://github.com/mlevans/leaflet-hash), by @mlevans
- [proj4js](https://github.com/proj4js/proj4js), by @madair, @calvinmetcalf, @ahocevar and other
- [Proj4Leaflet](https://github.com/kartena/Proj4Leaflet), by @kartena
- [leaflet-search](https://github.com/stefanocudini/leaflet-search), by @stefanocudini
- [ol3-search-layer](https://github.com/webgeodatavore/ol3-search-layer), by @ThomasG77
- [simpleheat](https://github.com/mourner/simpleheat), by @mourner
- [OSMBuildings](https://github.com/kekscom/osmbuildings), by @kekscom
- [leaflet-multi-style](https://github.com/perliedman/leaflet-multi-style), by @perliedman
- [Leaflet.SvgShapeMarkers](https://github.com/rowanwins/Leaflet.SvgShapeMarkers), by @rowanwins
- [rbush](https://github.com/mourner/rbush), by @mourner
- [Labelgun](https://github.com/Geovation/labelgun), by @JamesMilnerUK
- [Leaflet.pattern](https://github.com/teastman/Leaflet.pattern), by @teastman
- [Leaflet.VectorGrid](https://github.com/Leaflet/Leaflet.VectorGrid), by @IvanSanchez
- [Leaflet.Control.Layers.Tree](https://github.com/jjimenezshaw/Leaflet.Control.Layers.Tree), by @jjimenezshaw