Tutorials

Free tutorials covering LunaMap, GeoServer, PostgreSQL/PostGIS, and QGIS workflows.

Tutorial Library

Search across the full tutorial archive or jump straight into PostGIS, GeoServer, LunaMap, and QGIS content.

Create a LunaMap Workspace
Free Tutorial / July 1, 2025

Create a LunaMap Workspace

This tutorial explains how to create a LunaMap Workspace. Workspaces are the top level of organization within LunaMap such that layers are published to one or more workspaces, maps are created within workspaces, and users are assigned to workspaces. Workspaces can also be private and require authentication or public and available to anyone on the Internet.

LunaMap
Read Tutorial
Edit a LunaMap Workspace
Free Tutorial / July 1, 2025

Edit a LunaMap Workspace

Edit workspace information Add users to the workspace IMPORTANTOnce a user is added to a workspace, they will automatically get access to all maps and layers within it.

LunaMap
Read Tutorial
Delete a LunaMap Workspace
Free Tutorial / July 1, 2025

Delete a LunaMap Workspace

This tutorial explains how administrators can permanently delete a LunaMap workspace. Since this action cannot be undone, it is restricted to users with Administrator permissions.

LunaMap
Read Tutorial
Public vs Private LunaMap Workspaces
Free Tutorial / July 1, 2025

Public vs Private LunaMap Workspaces

This tutorial explains the difference between public vs private LunaMap Workspaces. A LunaMap workspace can be defined as either public or private, depending on access requirements. A public workspace does not require authentication so any online user can access all visible maps and layers. However, public users are read-only so they cannot make modifications to the workspace, maps, or layers. Private workspaces, on the other hand, are restricted to authenticated users who have been granted access and Administrators.

LunaMap
Read Tutorial
Private vs Shared Maps in LunaMap
Free Tutorial / July 1, 2025

Private vs Shared Maps in LunaMap

This tutorial explains the difference between private vs shared maps in LunaMap. A map can be set to shared or private, depending on access requirements. A shared map can be viewed by any member of its workspace and modified by the map owner and any Administrator. Private maps, on the other hand, are only accessible to the owner of the map or an Administrator.

LunaMap
Read Tutorial
Search for Maps in LunaMap
Free Tutorial / July 1, 2025

Search for Maps in LunaMap

This tutorial explains how to search for maps in LunaMap, helping users quickly find maps within their workspace. If your workspace has a large number of maps, you can locate a map using the “Search maps” box on the Maps panel. This tool filters maps based on a search term.

LunaMap
Read Tutorial
Update Maps in LunaMap
Free Tutorial / June 27, 2025

Update Maps in LunaMap

This tutorial explains how to update maps in LunaMap. Every map may contain multiple layers with different settings, such as z-order, opacity, and more. Saving a map will preserve all these configurations so the map is displayed consistently each time it is loaded. Follow these instructions to save changes to a map:

LunaMap
Read Tutorial
Manage Maps with the Administrator Tools in LunaMap
Free Tutorial / June 27, 2025

Manage Maps with the Administrator Tools in LunaMap

This tutorial explains how to manage maps with the Administrator Tools in LunaMap, namely how to edit or delete existing maps. The Manage Maps page shows all maps in a table that can be easily sorted and searched. The right column contains two action buttons to either edit or delete a map.

LunaMap
Read Tutorial
Create a Map in LunaMap
Free Tutorial / June 27, 2025

Create a Map in LunaMap

Maps are created and stored within a workspace using raster and vector layers that were published to that same workspace. While a workspace can contain multiple maps, each map belongs exclusively to one workspace, owned by the map creator, and only accessible to users within its workspace.

LunaMap
Read Tutorial
Understanding Layer Management in LunaMap
Free Tutorial / June 27, 2025

Understanding Layer Management in LunaMap

Understanding layer management in LunaMap is critical for administrators. Layers are either raster and vector data sources and a map can include multiple layers. Each layer in LunaMap can be used across multiple maps and within multiple workspaces. Although most configuration is done by an administrator within the Layer Manager page (e.g. yourdomain.com/layers), within a map a user may further define z-order and opacity.

LunaMap
Read Tutorial
Publish PostGIS Layers in LunaMap
Free Tutorial / June 27, 2025

Publish PostGIS Layers in LunaMap

The following instructions document how to publish PostGIS layers in LunaMap. These instructions assume that you have already published the layer in Geoserver – if needed, see here for instructions on how to publish PostGIS layers in Geoserver.

LunaMap
Read Tutorial
Publish Raster Layers in LunaMap
Free Tutorial / June 27, 2025

Publish Raster Layers in LunaMap

This tutorial explains how to publish raster layers in LunaMap is similar to publishing a PostGIS layer except that rasters do not have search and visualization fields defined.

LunaMap
Read Tutorial
Edit Layers in LunaMap
Free Tutorial / June 27, 2025

Edit Layers in LunaMap

This tutorial explains how to edit layers in LunaMap, including layer metadata, display properties, and search & zoom parameters.

LunaMap
Read Tutorial
The Layers Panel in LunaMap
Free Tutorial / June 27, 2025

The Layers Panel in LunaMap

The Layers Panel in LunaMap allows users to control how layers are added, organized, and displayed within a map. Using the Layers Panel, users can add or remove layers, adjust layer order, group layers, and access layer tools such as zoom, search, and metadata to manage map content effectively.

LunaMap
Read Tutorial
Search and Zoom in LunaMap
Free Tutorial / June 27, 2025

Search and Zoom in LunaMap

This tutorial explains how to search and zoom in LunaMap. The Search and Zoom tool helps locate features based on a search term. The tool will search the selected layer based on the searchable fields defined in the layer manager. For example, if the “address” field is set as searchable in a parcel dataset, the user could then enter the search term “123” or “123 Acme” to locate the parcel with address “123 Acme Street”.

LunaMap
Read Tutorial
Export to PDF with LunaMap
Free Tutorial / June 27, 2025

Export to PDF with LunaMap

This tutorial explains how to export to PDF with LunaMap. The Print tool in LunaMap allows users to create and download custom PDF maps. By selecting the desired map, setting a title, description, print scale, and page layout, users can generate a professional layout.

LunaMap
Read Tutorial
Map Notes in LunaMap
Free Tutorial / June 27, 2025

Map Notes in LunaMap

Map Notes in LunaMap allow users to mark specific points on the map and add descriptive information about each point. This feature is useful for annotating locations, providing context, and organizing spatial data with additional details, helping to enhance map interactivity and information sharing. Map Notes are related to the map itself, so a note created for Map X will only be visible if Map X is open.

LunaMap
Read Tutorial
LunaMap User and Administrator Settings
Free Tutorial / June 27, 2025

LunaMap User and Administrator Settings

The LunaMap User and Administrator Settings contains three sections, namely (1) My Profile to set user-specific settings, (2) Preferences to set a user-specific workspace and default map, and some application-wide administrator settings and user-specific settings that personalized the experience. The settings include options to update user information, set a default workspace and map, and brand the application’s appearance with custom logos, colour scheme, and text. This ensures that LunaMap aligns seamlessly with individual or organizational branding and workflow needs.

LunaMap
Read Tutorial
LunaMap User Roles and Permissions
Free Tutorial / June 27, 2025

LunaMap User Roles and Permissions

Understanding LunaMap user roles and permissions is essential to effectively use the application. LunaMap organizes users into four distinct roles, each with specific permissions and capabilities, namely (1) Administrators, (2) Standard Users, (3) Viewers, and (4) Public Users. The following sections provide a detailed explanation of the permissions and capabilities associated with each role.

LunaMap
Read Tutorial
Security and Permissions in Geoserver
Free Tutorial / April 9, 2025

Security and Permissions in Geoserver

This tutorial provides a brief introduction to security and permissions in Geoserver. For more in-depth discussion, consult the Geoserver official documentation here .

GeoServer
Read Tutorial
Style Rasters in Geoserver
Free Tutorial / April 9, 2025

Style Rasters in Geoserver

This tutorial explains how to style a rasters in Geoserver, from exporting an SLD from QGIS to previewing the styled raster in Geoserver.

GeoServerQGIS
Read Tutorial
Publish Rasters with Geoserver
Free Tutorial / April 9, 2025

Publish Rasters with Geoserver

This tutorial explains how to publish rasters in Geoserver, from upload to preview. See our other tutorials to learn how to optimize and style rasters for Geoserver.

GeoServer
Read Tutorial
Layer Groups in Geoserver
Free Tutorial / April 9, 2025

Layer Groups in Geoserver

This tutorial details how to create Layer Groups in Geoserver to publish a group of layers as a single service. A Layer Group can contain both vector and raster data sources and can be accessed via a single WMS request, so it acts like a single layer.

GeoServer
Read Tutorial
Style Vector Layers in Geoserver
Free Tutorial / April 9, 2025

Style Vector Layers in Geoserver

This tutorial details how to style vector layers in Geoserver. Geoserver and QGIS read and write a common style format called Styled Layer Descriptor (SLD) which are used to style layers for Web Map Services (WMS). Follow these steps to export an SLD from QGIS and import it into Geoserver.

GeoServer
Read Tutorial
Publish Shapefiles in Geoserver
Free Tutorial / April 9, 2025

Publish Shapefiles in Geoserver

Geoserver can also be used to publish shapefiles, which is best done when the layer itself will not change over time. The process to share a shapefile is similar to sharing a PostGIS layer in that one has to (1) create a store and (2) publish a layer from the store. The only difference is that the data itself needs to be transferred (e.g. via SFTP or FTP) first to the server running Geoserver. Geoserver does not have the capability to upload files through its interface. Proceed to the following steps once the file is uploaded to the server.

GeoServer
Read Tutorial
Publish PostGIS Layers in Geoserver
Free Tutorial / April 9, 2025

Publish PostGIS Layers in Geoserver

This tutorial explains how to publish PostGIS layers in Geoserver. It is important to note that when creating a PostGIS store, it is created for the entire schema. If multiple layers are to be shared from a single schema, one only needs to create a single store pointing to the schema. If, however, one needs to share layers stored in multiple schemas, a store will need to be created for each schema.

PostGISGeoServer
Read Tutorial
The Geoserver Data Structure
Free Tutorial / April 9, 2025

The Geoserver Data Structure

The tutorial explains the Geoserver data structure. Geoserver organizes spatial data through a hierarchy of components: workspaces, stores, layers, layer groups, and styles. Workspaces help group related data (like boundaries or imagery) and can be isolated for targeted WMS requests. Stores connect Geoserver to specific data sources—such as shapefiles, rasters, PostGIS schemas, or remote services. Each dataset served from a store is a layer, while layer groups allow multiple layers to be combined and displayed as one. Styles, defined in SLD or CSS format, control how layers are visually rendered. Together, these components structure how spatial data is published and styled in Geoserver.

GeoServer
Read Tutorial
Data Auditing in PostgreSQL
Free Tutorial / April 9, 2025

Data Auditing in PostgreSQL

Data auditing in PostgreSQL is a way to track changes on database tables by logging all actions (CREATE, INSERT, UPDATE, DELETE) to another table. In PostgreSQL, auditing tables and the associated trigger functions can be created in many ways and there are also extensions that can be used for auditing. The method presented in this tutorial is one of many possible approaches to data auditing.

PostGIS
Read Tutorial
PostgreSQL Trigger Functions
Free Tutorial / April 9, 2025

PostgreSQL Trigger Functions

PostgreSQL trigger functions can be used to execute predefined routines on database objects. For example, trigger functions are often used to populate metadata fields automatically, such as a created_by field that requires the username of the user who created the row. With PostGIS, trigger functions can also be used to execute spatial functions, such as st_area or st_length. Almost any valid SQL SELECT statement can be used as part of a trigger function.

QGISPostGIS
Read Tutorial
Getting Started with Spatial SQL using PostGIS
Free Tutorial / April 9, 2025

Getting Started with Spatial SQL using PostGIS

This tutorial provides a brief overview of SQL and spatial SQL with PostGIS. It was designed for those who have little or no experience with SQL so it starts with basic queries and progresses to more complex queries that include spatial functions from PostGIS. The tutorial at the end presents a list of questions that you will use to write your own SQL queries.

PostGIS
Read Tutorial
PostgreSQL Permissions and Security
Free Tutorial / April 9, 2025

PostgreSQL Permissions and Security

This tutorial provides a brief overview of PostgreSQL permissions and security. Permissions in PostgreSQL are explicitly granted to a group role or login user. By default, PostgreSQL does not grant any permissions to any users on the system, except for Superusers (see next section). There are three types of roles in PostgreSQL.

QGISPostGIS
Read Tutorial
How to use QGIS User Profiles with Different PostgreSQL Users
Free Tutorial / April 9, 2025

How to use QGIS User Profiles with Different PostgreSQL Users

The tutorial explains how to create multiple QGIS user profiles for different PostgreSQL users. Since QGIS profiles are completely isolated from one another, these profiles are helpful when troubleshooting issues for different users, especially issues related to PostgreSQL. For example, it is possible to create a profile for a read-only user and test their ability to connect to and interact with the database.

QGISPostGIS
Read Tutorial
Manage QGIS Symbology in PostGIS
Free Tutorial / April 8, 2025

Manage QGIS Symbology in PostGIS

This tutorial demonstrates how to manage QGIS symbology in PostGIS. QGIS layer symbology can be saved into a PostgreSQL/PostGIS database from which the associated layer resides. Whereas projects are stored in individual project tables in each schema, symbologies are stored centrally in a single table that resides in the public schema. The table is called layer_styles and it stores all symbologies associated with any table within the database. It is a powerful, enterprise-level capability that allows administrators to centralize an organization’s symbologies and all that is saved within a QGIS style file.

QGISPostGIS
Read Tutorial
Manage QGIS Projects in PostGIS
Free Tutorial / April 8, 2025

Manage QGIS Projects in PostGIS

This tutorial demonstrates how to manage QGIS projects in PostGIS. QGIS projects contain numerous elements, including layers and styles, print layout, custom tools, definitions for relations, default values, project variables, etc. The list goes on and on. All such information is saved to the QGS file, which is nothing more than an XML file. QGIS projects are often saved to the local filesystem, but they can also be saved to a PostgreSQL connection. In this section, you will learn how to manage projects with PostgreSQL. The following are some things to know about storing projects in PostgreSQL.

QGISPostGIS
Read Tutorial
Upload Data to PostGIS using QGIS
Free Tutorial / April 8, 2025

Upload Data to PostGIS using QGIS

This tutorial demonstrates how to upload data to PostGIS using QGIS. There are many ways to upload data to a PostgreSQL/PostGIS database, including both GUI and command line tools. QGIS can be used to upload both spatial and non-spatial data into PostgreSQL/PostGIS. In QGIS, there are at least five ways to load data into a PostgreSQL/PostGIS database using the QGIS GUI, namely:

QGISPostGIS
Read Tutorial
Manage PostGIS Databases in QGIS
Free Tutorial / April 8, 2025

Manage PostGIS Databases in QGIS

In this tutorial, you will create the basic structure of an enterprise spatial database. It will have schemas for each major category of data, such as transportation and hydrology. You will also learn how to create, rename, edit, and move tables in the database using the QGIS Browser Panel and DB Manager.

QGISPostGIS
Read Tutorial
Connect to PostGIS from QGIS
Free Tutorial / April 8, 2025

Connect to PostGIS from QGIS

This tutorial demonstrates how to connect to PostGIS from QGIS. To connect QGIS to a PostGIS database, use the Browser panel to create a new PostgreSQL connection. You’ll need to provide the host, port, database name, and a QGIS authentication configuration—not basic auth. Authentication settings are stored securely within your QGIS profile and include a username, password, and a shared Authentication ID to prevent “Unavailable Layer” errors across users. Once the credentials are configured, use the “Test Connection” button to verify access, then enable all relevant checkboxes and save. Your new PostGIS connection will appear under the PostgreSQL section in the QGIS Browser.

QGISPostGIS
Read Tutorial
Interact with Geospatial Data in QGIS
Free Tutorial / March 7, 2025

Interact with Geospatial Data in QGIS

This tutorial demonstrates how to interact with Geospatial Data in QGIS. It provides an example of a geospatial project workflow in QGIS that includes (1) loading geospatial data into a QGIS project, (2) modifying the appearance of map layers appearance and (3) creating and saving a map document output. This will further introduce you to the QGIS interface in a practical way, and teach you about other dialogs and interfaces you will work frequently with including the Layer Properties dialog and the Layout Manager.

QGIS
Read Tutorial
Work with GPS Data in QGIS
Free Tutorial / March 7, 2025

Work with GPS Data in QGIS

This tutorial demonstrates how to work with GPS data in QGIS. GPS data is commonly downloaded in tabular format. In this tutorial, you will learn how to display and save tabular point data as a shapefile in QGIS.

QGIS
Read Tutorial
Export Data from QGIS
Free Tutorial / March 7, 2025

Export Data from QGIS

This tutorial demonstrates how to Export Data from QGIS, including saving new shapefiles, converting data formats, and sharing datasets with others. You will also learn how to export your map canvas as an image or figure for use in reports, presentations, or other documents.

QGIS
Read Tutorial
NDVI Analysis in QGIS
Free Tutorial / March 7, 2025

NDVI Analysis in QGIS

This tutorial demonstrates how to conduct NDVI analysis in QGIS. Normalized Difference Vegetation Index (NDVI) is calculated from multispectral (multiband) rasters, which consist of multiple images captured at different wavelengths. You will learn how to combine spectral bands and perform raster calculations to generate NDVI rasters that are widely used to assess vegetation health, density, and spatial patterns across a landscape.

QGIS
Read Tutorial
Terrain Analysis in QGIS
Free Tutorial / March 7, 2025

Terrain Analysis in QGIS

This tutorial will introduce you to a suite of tools and techniques for terrain analysis in QGIS. You will also be introduced to one of the most common types of raster, known as a digital elevation model (DEM), that represents surface elevation. DEM’s are the input used to derive a number of other rasters representing relief topography, such as surface steepness (i.e. slope) or exposure (i.e. aspect). Like overlay analysis, these common raster products can be derived and used to solve spatial analytical questions.

QGIS
Read Tutorial
Overlay Analysis in QGIS
Free Tutorial / March 7, 2025

Overlay Analysis in QGIS

This tutorial introduces overlay analysis in QGIS, a process that examines the spatial and geometric relationships between two or more geospatial features to create new or modified datasets for analytical purposes. A range of tools and algorithms available in QGIS for performing overlay analysis will be explored.

QGIS
Read Tutorial
Explore Attributes Data in QGIS
Free Tutorial / March 7, 2025

Explore Attributes Data in QGIS

Explore Attributes Data in QGIS through hands-on querying, analysis, and spatial selection using real municipal parcel data from Windsor, Canada. This tutorial walks through practical workflows for selecting features based on attribute values, calculated geometry, and spatial relationships using tools like Select by Expression, the Field Calculator, and Select by Location. You’ll calculate new attributes, generate statistics, compare zoning categories, and export results for further analysis. By combining attribute-based queries with spatial logic, the tutorial demonstrates how QGIS can be used to extract meaningful insights from complex datasets rather than simply viewing table data.

QGIS
Read Tutorial
Table Joins in QGIS
Free Tutorial / March 7, 2025

Table Joins in QGIS

This tutorial focuses table joins in QGIS, the process of adding non-spatial tabular data to the attribute tables of geospatial layers. In addition, this tutorial explains how to export joined layers to geopackage, style a layer based on attribute classification, and export layer style files in QML format.

QGIS
Read Tutorial
Create and Edit Geospatial Data in QGIS
Free Tutorial / March 7, 2025

Create and Edit Geospatial Data in QGIS

This tutorial demonstrates how to create and edit geospatial data in QGIS. Specifically, you will learn how to create geospatial data in QGIS from scratch, draw (i.e. digitize) features, edit the geometry of new and existing geospatial features, and create/calculate new feature attribute data.

QGIS
Read Tutorial
An Overview of the QGIS Interface
Free Tutorial / March 7, 2025

An Overview of the QGIS Interface

This tutorial will provide an overview of the QGIS interface and how to interact with it. You will load some demo data into the QGIS interface, style a layer, and interact with features.

QGIS
Read Tutorial