oR
ouRGeo
Open-Source Spatial IDE
Home Features Docs Download Forum News Plugins Contribute Privacy Sign in Account Sign out

Documentation

Everything ouRGeo does, written for someone with the app open. Start here, then dive into the interface, the toolbox, data import or the map canvas.

01 What ouRGeo is

A desktop spatial IDE that keeps R at the centre — ArcGIS Pro’s interface, RStudio’s transparency.

ouRGeo is a free, AGPL-3 licensed desktop application for spatial analysis. It gives you a map canvas, a layers panel, a geoprocessing toolbox and a digitizing environment — the tools you’d expect from a GIS — but it runs every one of them on R’s spatial stack (sf, terra, ggplot2, tmap) and shows you the code as it goes.

It runs entirely on your machine. There is no telemetry and no cloud dependency; an internet connection is only needed if you pull data from a web service or use a hosted AI model. An ourgeo.dev account is free and entirely optional — it exists for the community forum and for installing plugins from the plugin store, and nothing else asks for one.

New here? Read The one idea that matters below — it explains the single design decision that everything else in ouRGeo follows from.
The ouRGeo application window showing the code editor, console and map canvas.
ouRGeo — editor and console on the left, spatial editor on the right.

02 Install and one-time R setup

Grab an installer from the Download page. Windows and Linux builds are available today; macOS is on the roadmap.

R 4.1 or newer is required and is installed separately from ouRGeo. Follow the Windows or Linux instructions to install R, install ouRGeo and run the required R package commands in PowerShell or your Linux terminal. Use the same Rscript executable in the terminal and in Settings → R Backend. The core packages (httpuv, jsonlite, later and httr2) must be installed before ouRGeo can connect to R; the download page also lists packages for optional spatial and database features.

On Debian or Ubuntu, an N: Download is performed unsandboxed as root notice or a skipped AppArmor profile message does not stop installation. If APT reports Setting up ourgeo, the package installed successfully.

03 Your first five minutes

ouRGeo always opens into a scratch project — a clean R session that you can experiment in freely and never have to name or save.

  1. Check R connected. A small status dot sits next to the project name at the top right. If R did not start, open Settings → R Backend and pick an installation.
  2. Load something. Press Load Data in the toolbar and open a shapefile, GeoPackage, CSV or GeoTIFF — or press Data Connector and pull a layer straight from a public web service.
  3. Look at the console. The import you just clicked through emitted an R command. That is the whole idea — see below.
  4. Put it on the map. Open the spatial editor with the globe button, then use Add Features to add your layer to the map.
  5. Run a tool. Open the Toolbox, pick something like Buffer, and watch the Code Preview build the R as you fill the form.
  6. Keep the work. Either Save As a .ourgeoproj project, or turn on recording and walk away with a runnable script.

04 The one idea that matters

Every GUI action has a matching R command, and you always get to see it.

When you buffer a layer, run a join, reproject, compute a distance or draw a feature through the interface, ouRGeo does not perform a hidden internal operation. It writes the real R command and runs that in your session, echoing it to the console exactly as if you had typed it.

# What appears in your console after clicking through Toolbox → Buffer
parcels_buffered <- sf::st_buffer(parcels, units::set_units(50, m))

Three things follow from that:

  • Your click-through is an audit trail. Anyone can read the console and see precisely what was done to the data, in a language they can check.
  • You can leave the GUI at any point. The objects the toolbox creates are ordinary R objects in your environment. Type at the console, edit them, model them, hand them to a package the GUI knows nothing about.
  • Point-and-click work is reproducible. Not "reproducible in principle" — you can literally copy the commands into a script and re-run them.
This is why nearly every dialog in ouRGeo has a code preview or a Copy Code button. If you find one that hides its work, that is a bug worth reporting.

05 Recording a session

Seeing the code is useful; keeping it is better. The Record Console button (the circle icon in the toolbar) appends every command your session generates to a file of your choosing.

Starting
Press Record Console. A dialog asks where the commands should go: the tab that is currently open, a new blank script, or an existing .R file on disk.
While recording
The button turns red and its tooltip changes to Stop Recording. Commands are appended in real time as they happen — there is no "flush at the end" step to forget.
Console output
The recording dialog offers to include returned output alongside the commands, which is useful for a worked example and noise for a clean script.
Stopping
Press the button again. The target tab holds a runnable script that reproduces the session.
A GUI operation and the R code it emitted, captured into a script.
A GUI operation and the exact R it emitted — captured by recording into a runnable script.

06 Projects, scratch and what persists

ouRGeo has two modes of working, and the difference matters because it decides what survives a restart.

The scratch project

What you launch into. A clean R environment every time, and it cannot be saved in place — Save is disabled, and closing or switching away never prompts you. Its code tabs are the exception: your open .R files and untitled scratch tabs are deliberately kept across restarts, and they come back even if you have been working in a named project in between.

Named projects

Save As turns scratch into a real project: a portable .ourgeoproj file. It is a single bundle holding your code tabs, R environment, map layers, view and legend settings, plots, and any connected databases — so opening it elsewhere restores the whole workspace, not just the scripts.

  • Load resets the R session, restores the saved objects, then reconnects any .Rgeo databases so their lazy table references work again.
  • Dirty tracking applies to named projects only. Changing the environment, layers or plots marks the project modified.
  • On quit, a modified named project prompts Save / Don’t Save / Cancel. Your code tabs are written out whichever you choose.
  • Recent projects — the last five are listed in the project dropdown.

Crash recovery

Layers, console history, plots and data-viewer tabs are autosaved continuously during a session and deleted on a clean exit — so a normal launch is always clean, but a crash leaves everything behind to be recovered.

07 Keyboard shortcuts

KeysWhereAction
Ctrl+EnterCode editor Run the current line and advance the cursor
Shift+EnterCode editor Run the selection (or the current line if nothing is selected)
EnterConsoleSend the command
Shift+EnterConsole Insert a newline instead of sending
Ctrl+SpaceCode editor Trigger autocomplete manually
Ctrl+OAnywhereOpen a file
Ctrl+SCode editorSave the active tab
Ctrl+NCode editorNew tab
Ctrl+WCode editorClose the active tab
Ctrl+Shift+= / -Anywhere Zoom the interface in / out
Ctrl+Z / Ctrl+YDrawing Undo / redo — draft edits first, then staged commits
EnterDrawing Commit the geometry and advance to the next row
EscDrawingFinish and close the drawing session
BackspaceDrawingRemove the last vertex
NDrawingSave the current part, start the next
HDrawingStart a hole in the polygon
BDrawing Distance & Bearing — type the next course instead of clicking
UDrawing Curve — the same strip, starting on a curved course
Ctrl+C / R / DTerminal Go to the shell unchanged — interrupt, reverse-search, end of input
Ctrl+Shift+C / VTerminal Copy / paste (everything else is the shell’s)
Ctrl+Shift+FTerminal Search the scrollback
Ctrl+= / -Terminal Text size in the focused terminal

08 Troubleshooting

R will not connect

  • Confirm R 4.1+ is installed and that Rscript is on your PATH.
  • Check the four core packages are present: httpuv, jsonlite, later, httr2. Without them the backend cannot start.
  • If you recently upgraded R, rebuild your packages (update.packages(ask = FALSE, checkBuilt = TRUE)).
  • Point ouRGeo at a specific interpreter with Settings → R Backend → Browse for Rscript….

A tool fails on curved geometry

Some operations are GEOS-only and cannot handle true arcs. Tick Linearize curved geometry before calculation in the tool form — see Linearize and Calculation CRS.

Buffer or area results look wrong

Almost always a CRS problem: planar maths on lat/lon data. Set a Calculation CRS on the tool, or leave it on Auto-detect, which picks a UTM zone from your data. Details in the toolbox docs.

A raster layer vanished from the map

Raster map layers are tied to the R object backing them. If that object is replaced or removed, the layer is invalidated; ouRGeo re-registers it automatically where it can and drops it where it cannot. Re-add it from Add Features.

The window went black after sleep

Known behaviour of the underlying graphics stack. ouRGeo forces a repaint on resume; if a window stays blank, resizing it triggers a redraw without losing state.

Still stuck

Ask on the community forum. Include your OS, ouRGeo version, R version, and the console output — the console text is the single most useful thing you can paste.