GIS Tools

Language

Made withfor the GIS community

GIS Notebook

Save your project state to a single JSON file

Analysis
[1] Text

About GIS Notebook

  • β€’ Load GeoJSON data to start analysis
  • β€’ Add text cells for documentation
  • β€’ Add operation cells to process data
  • β€’ Operations chain together (each uses previous result)
  • β€’ Export notebook to save your workflow

What Is a GIS Notebook?

A GIS notebook is a single-file snapshot of an entire spatial analysis project: the data layers, the applied styling, the filter state, the map viewport, any derived outputs, user annotations and the sequence of operations that produced them. Think of it as a saved workspace that you can open later, share with a colleague or archive as a reproducible record of how you arrived at a map or an analytical result. In the desktop GIS world, QGIS projects (.qgz) and ArcGIS Pro project packages (.aprx, .ppkx) fill this role. The GIS Notebook on gis.tools does the same for browser-based work.

The GIS Notebook tool on gis.tools saves the current state of your gis.tools session β€” layers, styling, map view, tool outputs, annotations β€” to a single portable JSON file. People search for "gis project file", "save gis state", "geojson project", "web gis notebook", "reproducible gis" and "gis workspace export" because analysts and students need a way to preserve their work between sessions, collaborate with colleagues, submit homework, publish reproducible research and archive projects for later reference.

A notebook is not just a backup. It is a research object. A well-structured notebook records not only the final state but the operations performed, so a colleague reloading it can re-run the pipeline and verify the result. This is the spirit of computational notebooks like Jupyter brought to the GIS world.

How a GIS Notebook Works

Four things go into a notebook: data references, applied operations, presentation state and metadata.

Data References

The notebook can embed small vector layers directly (GeoJSON in-place) or reference external data by URL. Large rasters are typically referenced rather than embedded to keep the notebook portable. The tool lets you choose per layer whether to embed or reference.

Operation History

Every geoprocessing tool invocation (buffer, clip, zonal stats, NDVI calculation, reclassification) is appended to an operation log with its inputs, parameters and output layer ID. Reloading the notebook replays the operations to reconstruct the derived layers.

Presentation State

Layer visibility, active layer, styling (colours, strokes, symbology rules), map center, zoom level, basemap choice, selected features, active filters, dashboard layouts, story map slides β€” all the presentation settings that turn raw data into a finished analysis.

Metadata

Title, author, creation date, last modified, description, tags, units of measurement, CRS declarations, data source citations and a free-text notes section. Good metadata is what makes a notebook reusable months later.

Serialisation Format

The notebook is a single JSON file with a well-documented schema. JSON is universally parseable, human-readable with a text editor, version-control friendly (git diffs) and future-proof. A notebook saved today should still load in a year.

Reproducibility vs Portability

A notebook can prioritise reproducibility (embedding all data and a full operation log) or portability (referencing external data and saving only the presentation state). Users choose which trade-off suits their workflow.

Key Parameters and Options

Embed vs Reference

For each layer, choose whether to embed the data directly in the notebook JSON or reference it by URL or file path. Embed for reproducibility; reference for portability and small file size.

Include Operation History

Toggle whether to save the log of geoprocessing operations. Turning it off produces a presentation-only notebook; turning it on produces a reproducible research object.

Include Style Definitions

Save per-layer styling rules. Essential for any notebook intended for sharing or publication.

Compression

Gzip-compress the JSON for smaller file sizes β€” especially useful when embedding medium-sized vector layers.

Metadata Fields

Title, author, description, tags, citation, date ranges and license information.

Schema Version

The notebook format carries a version number so future versions of the tool can detect and migrate older files.

Practical Applications

Session Continuity

You start a project on Monday β€” load data, apply styling, run a few analyses. On Tuesday you want to pick up where you left off. You save the notebook at the end of Monday and reload it on Tuesday, restoring the exact state of your session instantly.

Collaboration and Handoffs

An analyst finishes an initial analysis and hands the notebook to a colleague for review. The colleague loads the notebook, sees exactly the same map view, layer styling and derived outputs, and can iterate without having to replicate the setup manually.

Classroom Assignments

A GIS instructor assigns a project. Students complete the work in gis.tools, save a notebook and submit it. The instructor loads each notebook to grade the work, seeing the student's data, styling, analysis steps and output exactly as the student did.

Reproducible Research

A researcher publishes an academic paper based on spatial analysis. The supplementary material includes the gis.tools notebook file, so readers can reload the analysis, verify the results and extend the work.

Client Deliverables

A GIS consultant delivers a project to a client as a packaged notebook. The client can load the file, explore the maps and examine the analytical steps without needing to install any software or train on a new tool.

Data Journalism Archives

A journalist publishes a map-driven story and archives the notebook alongside the article. Future fact-checkers and historians can recreate the analysis from the archived file.

Personal Portfolio

A GIS analyst curates a portfolio of saved notebooks demonstrating different skills β€” cartography, raster analysis, multi-criteria decision making, time-series animation. Each notebook is a self-contained demonstration.

Crisis Response Logs

An emergency response coordinator saves nightly notebooks during a multi-week incident so the response timeline and decisions can be reconstructed for the after-action review.

Step-by-Step Workflow in gis.tools

  1. Work on your project in gis.tools β€” load layers, style them, run analyses, build dashboards or story maps.
  2. When you want to save progress, open the GIS Notebook panel.
  3. Enter a title, author, description and any tags. Add free-text notes if needed.
  4. Decide per-layer whether to embed the data or reference it.
  5. Toggle whether to include the operation history and styling rules.
  6. Click Save. The tool serialises the current session into a JSON file and offers a download.
  7. Store the file wherever suits you: local disk, cloud storage, version control, email attachment.
  8. To resume, open the GIS Notebook panel again and click Load. Drop the saved JSON file in.
  9. The tool rehydrates the session: data loads, styles apply, map restores its viewport, derived outputs reappear.
  10. Continue the work exactly where you left off.

Worked Example: A Multi-Session Watershed Analysis

You are analysing a 500 km2 watershed in three sessions over a week. Day 1: you load a DEM, compute slope and aspect with the Slope/Aspect Calculator, clip to the watershed boundary with Clip Raster by Polygon and save the first notebook. Day 2: you load the notebook, add a land cover raster, run Raster Reclass Tool to simplify the classes and compute Zonal Statistics per sub-basin. Day 3: you load the day-2 notebook, style the result with Graduated Styling, add a scale bar and Print Composer layout. Each session starts where the last ended. At the end of week 1 you archive the final notebook in your project folder and send a copy to your supervisor, who loads it and reviews your full pipeline in minutes.

Common Pitfalls and Gotchas

  • Embedding multi-gigabyte rasters produces giant notebook files; reference them externally instead.
  • Referenced external data must still be accessible when the notebook is reloaded, or the load fails.
  • Operation history is reproducible only if all referenced data is available and unchanged.
  • Changes to gis.tools versions may require a notebook format migration β€” the schema version makes this explicit.
  • Sensitive data embedded in a notebook travels with the file; do not share notebooks publicly if they contain private layers.
  • Styling that relies on specific browser fonts or colour libraries may render slightly differently on another machine.
  • Operation history loses fidelity if you hand-edit layers between steps β€” keep edits explicit and tool-mediated.
  • Gzip compression dramatically reduces file size but requires the loader to handle compressed JSON.

Tips for Best Results

  • Use descriptive titles and metadata so notebooks are discoverable months later.
  • Save frequently during complex sessions β€” like committing in git.
  • Embed small critical layers to guarantee reproducibility; reference large rasters.
  • Add free-text notes explaining the analytical intent and the decisions made.
  • Version notebooks by date or by milestone (watershed_v1.json, watershed_final.json).
  • For collaborative projects, agree on naming conventions and storage locations.
  • Keep notebooks alongside the data they reference for portability.
  • Include a short README in the same folder summarising the notebook contents.

Comparison with Other GIS Approaches

QGIS saves projects to .qgz (a zipped XML) or .qgs (plain XML), supporting embedded and referenced layers, styling and layouts. ArcGIS Pro uses .aprx (project) and .ppkx (packaged project) files. Jupyter notebooks combine code, markdown and output but do not have a native GIS-specific schema. The GIS Notebook on gis.tools sits between these: browser-native, single-file JSON, fully open format, designed for web GIS workflows rather than desktop. The trade-off is that it cannot match the feature depth of QGIS projects, but for browser-based work it is ideal β€” no install, no project manager, no proprietary format.

Performance Considerations

Loading a notebook is as fast as loading the embedded or referenced data. A notebook with a few megabytes of embedded vector data loads in seconds. Very large embedded rasters slow loading proportionally β€” prefer references for files over a few hundred megabytes. Replaying operation history is as expensive as running the original operations, so complex pipelines take time to reconstruct.

Data Privacy and Browser-Based Processing

Notebooks are created, saved and loaded entirely in your browser. No data is uploaded to any server during save or load. Sharing a notebook is an explicit, deliberate action β€” you download the file and transfer it however you choose. This matters for sensitive analyses, proprietary client work and any workflow subject to data residency requirements. Notebooks give you complete control over what leaves your machine and when.

Related GIS Concepts

Project File: A single-file record of a GIS workspace. Examples include QGIS .qgz, ArcGIS .aprx, ArcMap .mxd.

Reproducibility: The property of an analysis that lets a third party recreate the result from the saved inputs and operations. Core to scientific computing.

Computational Notebook: A document that interleaves code, output, narrative and media. Jupyter is the canonical example; the GIS Notebook adapts the idea for spatial work.

Serialisation Format: The file format used to persist a workspace. JSON is widely used because it is universally parseable and human-readable.

State Management: The broader software engineering discipline of saving and restoring the state of an interactive application.

Frequently Asked Questions

What goes into a GIS Notebook file?

Data layers (embedded or referenced), styling rules, map viewport, filter state, dashboards, story map slides, derived outputs and operation history β€” everything that describes your project.

How big can a notebook be?

Practically, a few hundred megabytes if you embed rasters. Smaller if you reference external data. Gzip compression helps significantly.

Can I version-control my notebook with git?

Yes β€” JSON diffs work well in git. Use a consistent key ordering for clean diffs.

Will my notebook work in future versions of gis.tools?

The schema version is recorded in the file. Future versions include a migration step for older notebooks.

Can I share a notebook publicly?

Yes β€” host the JSON file anywhere and distribute the URL. Anyone with the file and access to the referenced data can reload the project.

Does the notebook track who edited it?

You can include author metadata, but there is no cryptographic signing. For formal provenance, store the notebook in a version-control system that records author and timestamp.

Related Tools on gis.tools

100% client-side processing - your data stays private and never leaves your device