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

Features

ouRGeo is not a thin GUI bolted onto R — it's a full spatial IDE with capabilities you won't find together in any other tool. Here's what sets it apart.

sfarc Curves Toolbox Drawing Distance & Bearing AI Agent Data Connector Code History Terminal Plugins And More

01 sfarc — Exact Geometry on Curves

The problem every sf quietly ignores: real-world features have arcs, and everyone else fakes them.

Roads, parcels, cul-de-sacs, pipelines and survey plats are full of true circular arcs — CIRCULARSTRING, COMPOUNDCURVE, CURVEPOLYGON. Ask R sf/GEOS for the length or area of one and it silently linearizes the curve into hundreds of tiny straight segments first — introducing error — or refuses the geometry outright.

ouRGeo ships with sfarc, an R package built for this project that computes on curves analytically. It derives the circle centre, radius and swept angle straight from the arc's control points and returns a closed-form, exact answer — no densification, no approximation.

What sfarc computes exactly

lengthareacentroid bounding boxintersectionunion differencebuffer
When ouRGeo imports arcs from an Esri service, it rebuilds them as true OGC curves (not linearized) specifically so sfarc can measure them exactly — end-to-end fidelity from the server to your result.
Getting sfarc. It is a separate, open-source R package and is still working its way through CRAN review, so for now you install it from its Git repository — install.packages("remotes") then remotes::install_github("CCurtis1988/sfarc"). Full setup on the Download page; source at github.com/CCurtis1988/sfarc.
[Screenshot needed] Side-by-side comparison of a true circular arc (sfarc, exact) versus a linearized approximation (GEOS), with the measured length/area difference highlighted.
Exact (sfarc) vs. linearized (GEOS): the same arc, measured two ways — and the error linearization hides.

02 The Geoprocessing Toolbox

87 point-and-click tools across seven categories — and every one writes clean R.

Fill in a form, pick your layers and columns, hit run. The toolbox handles the geoprocessing you reach for every day — and instead of hiding the work, it generates the exact R code in your console so the result is always reproducible.

Table Operations 11 tools
Filter, select, mutate, sort, distinct, sample, slice and reshape attribute tables.
Joins & Combine 2 tools
Attribute and spatial joins, bind and combine datasets.
Aggregate & Reshape 5 tools
Group-by summaries, counts, pivots and long/wide reshaping.
Type & String 8 tools
Type coercion, parsing, and string cleaning / manipulation.
Spatial — sf 16 tools
Buffer, clip, intersect, union, centroid, reproject, simplify, distance and more.
Spatial — geos 11 tools
High-performance GEOS predicates and overlay operations.
Spatial — Raster 34 tools
terra-powered: reproject, resample, crop, mask, zonal stats, map algebra, terrain and more.
Reproducible by design every tool
No black boxes — the R behind each tool is emitted, editable and savable.

Full tool reference — all 87 tools, their parameters and the R they emit →

[Screenshot needed] The ouRGeo Toolbox dialog: category list on the left, a selected tool's parameter form (dataset, columns, output name) in the middle, and a live preview of the generated R code.
The Toolbox dialog — pick a tool, fill the form, and preview the R code. Pipe it to the next tool, copy it to your clipboard or run it directly.

03 Industry-Standard Drawing & Editing

Digitizing that feels like professional CAD — snapping, precision entry, and full geometry editing.

Drawing in ouRGeo isn't a toy sketch tool. It's a real digitizing environment built for accuracy, with the conventions surveyors and CAD users expect.

Smart snapping engine

As you draw, ouRGeo snaps to vertices, edges, midpoints and true intersections across every visible layer — plus the shape you're currently drawing. It's backed by a spatial index (R-tree), so snapping stays instant even over dense data, with a sensible priority order (vertex > intersection > midpoint > edge).

Precise input, not eyeballing

Type an absolute coordinate straight into the ribbon, or place the next vertex by distance and bearing. For a whole traverse there is a dedicated tool with its own entry strip — Distance & Bearing, below.

# Absolute coordinate
-122.42, 37.77

# Relative: 150 m at 45° clockwise from north
d150 a45
[Screenshot needed] Drawing a polygon on the map with a snap indicator highlighting a vertex/intersection, and the CAD input box showing a 'd150 a45' distance-bearing entry.
Snapping to an intersection while entering a precise distance-and-bearing vertex — CAD-grade digitizing.

04 Distance & Bearing — and Curved Courses

A deed, a plat and an alignment are lists of numbers. Type the numbers; the geometry lands where they say.

Press B and a traverse strip opens beside the map. Say where you are measuring from, then enter each course the way your notes are already written — 150 ↹ N45°30′E ⏎ — and the vertex lands exactly there. Bearings in azimuths, degrees-minutes-seconds, quadrant bearings, deflections (L/R) or angles right; distances in metres, feet, US survey feet, chains or miles, or just type 150ft and the unit comes with it.

Curved courses

Every real deed mixes lines with curves, so press U and type the call as it is written: “along a curve to the right, radius 250.00 feet, central angle 45°30′”. Tangent and non-tangent curves, clothoid spirals, the spiral–curve–spiral a highway plan quotes as one unit, and a free curve between two headings.

Give any two of radius, arc length, chord, tangent, external, mid-ordinate, central angle or degree of curve, and ouRGeo solves the rest and prints all of them back — a plat quotes them redundantly precisely so they can be checked against the page. Where two perfectly ordinary curves fit the pair you typed, it says so and names both rather than quietly picking one.

On the grid your survey was measured on

A bearing off a plat in a projected CRS is measured from grid north, and its distance is a grid distance. Measure that on the ellipsoid instead and the whole figure rotates by the grid convergence — up to 3° at a UTM zone edge — and scales by about 1:2500. Both are invisible: the figure still closes, it is just in the wrong place. So ouRGeo offers both bases, always names which is in force, and a projected layer defaults to its own grid in its own unit. Geodesic distances use Vincenty’s method on the WGS 84 ellipsoid rather than a sphere.

05 The In-App AI Agent + Autopilot

An assistant that understands your session — and can drive it, if you let it. Cloud or fully local.

Open the AI panel and ask, in plain language, for the analysis you want. The agent knows about your R environment and can write the code to get you there. Turn on Autopilot and it goes further — executing R directly in your live session and iterating toward the result.

Your model, your rules

ouRGeo isn't locked to one vendor. Use a cloud provider, or point it at a model running on your own machine for a 100% offline, private assistant — nothing leaves your computer.

OpenAIAnthropicGoogle OllamaLM Studiollama.cpp JanLocalAIvLLM SGLang+ more
Because local models are first-class, ouRGeo can be a genuinely private AI GIS assistant — no data sent to a third party, no subscription, no telemetry.
[Screenshot needed] The AI Chat panel docked on the right: a user prompt, the assistant's streaming reply with an inline R code block it executed, the model/provider selector, and the Autopilot toggle.
The AI panel with Autopilot enabled — the agent writes and runs R, streaming its reasoning and code inline.

06 The Data Connector

Reach into the world's public data catalogs without leaving the app — and get reproducible import code.

The Data Connector browses live web APIs and open-data portals, lets you build a query visually, previews the result, and then generates the R to import it. Only metadata and previews run in the UI — the actual import is R code echoed to your console, so your data pull is always reproducible.

Built-in providers

Esri ArcGIS RESTEsri Image ServicesOGC API–Features WFSOGC WMSOGC WCS STACSocrataCKAN ERDDAPERDDAP GridsSDMX ODataMacrostrat
[Screenshot needed] The Data Connector dialog: provider list (Esri, WFS, STAC, Socrata...), a query builder with filters, a data preview table, and the generated R import code at the bottom.
The Data Connector — browse a provider, build a query, preview, and import as reproducible R.

07 Code History & Session Recording

The defining idea of ouRGeo: every action has a matching R response you can keep.

This is what makes ouRGeo fundamentally different from a normal GIS. When you buffer a layer, run a join, compute a distance, or draw a feature through the GUI, the corresponding R code appears and runs in the console — the real command, not a summary. Your point-and-click session is, transparently, an R script being written for you.

Recording mode

Turn on recording and every GUI-generated command is appended to a file of your choice — the currently open tab, a new blank script, or an existing .R file on disk. Click your way through an analysis, and walk away with a clean, runnable script that reproduces it exactly.

Point-and-click when it's faster, drop to code when it's precise — and never lose the audit trail. That's reproducibility without the discipline tax.
[Screenshot needed] The console/editor showing a GUI action (e.g. a buffer) with the exact R command it generated echoed below, and the recording destination dialog choosing where to save the captured script.
A GUI buffer operation and the exact R it emitted — captured by recording into a runnable script.

08 A Real Terminal, Beside the Console

Your own shell, in the window where the work is — for the half of the job that was never going to be R.

A Terminal tab sits beside the R console. It is your own shell — bash, zsh, fish, PowerShell — with a real pseudo-terminal behind it, so top, vim, git, job control and colour all behave exactly as they do in a terminal window. Nothing starts until you click the tab.

09 Plugins, and a Store to Find Them In

Capabilities added while the app runs — written by you, by the assistant, or by somebody else.

A plugin can contribute data connectors, toolbox tools, actions, toolbar buttons, docs topics, R libraries and whole panels. The preferred kind is plain JSON — no code at all, and therefore no trust decision to make — with R files and compiled TypeScript available when a plugin genuinely needs them. The AI assistant can write one for you, scaffold and all, and test a connector against a live server before you ever enable it.

The plugin store

Browse it at ourgeo.dev/plugins or from Settings → Plugins → Plugin Store… inside the app. Every listing has been installed and run by a moderator before it appeared. Installing happens inside ouRGeo and needs a free ourgeo.dev account — the same one the forum uses — because plugin downloads are not public.

10 And a Whole Lot More

Maps & rendering

  • MapLibre vector maps — GPU-accelerated dark basemaps with fluid pan/zoom and feature inspection.
  • First-class rasters — R-served XYZ tiles with a full symbology editor (singleband/RGB/categorical, stretches, color ramps, histograms).
  • Plot popout — send any plot to its own window.

Export & publish

  • Publication maps — generate full ggplot2 or tmap code from your on-screen map, with titles, legend, north arrow, scale bar and graticules.
  • .Rgeo datasets — DuckDB-backed storage for large vector and raster data, including a tiled raster pyramid.

The R IDE you'd expect

  • Monaco editor — VS Code's editor with R highlighting and autocomplete.
  • R Markdown — .Rmd and .qmd as first-class documents, with runnable chunks and inline output, a visual mode, and knitting to HTML, PDF or Word.
  • Environment & Packages panels — live object browser and package manager, with your own environments listed beside .GlobalEnv and a “work in this environment” prompt.
  • Integrated help — search R docs and vignettes in-app.
  • A workspace you arrange — four zones, split or tabbed; any panel goes anywhere, including a second code editor. Save arrangements as presets and export them as files.
  • Dictation — speak to the assistant, transcribed on your own machine by default and never uploaded unless you choose a cloud service.

Make it yours

  • Three theming axes — the interface, R syntax colors and markdown prose colors, chosen independently. Ten app themes, 26 code palettes and 16 markdown palettes ship.
  • Theme Studio — build your own: every interface and editor color with live contrast warnings, your own backdrop image behind the code, and a card image for the picker.
  • Portable themes — export and import as .ourgeotheme.json files, artwork included. The AI assistant can build one to your description.

Yours to keep

  • AGPL-3 open-source — read it, audit it, fork it. Copyleft, so it stays open.
  • Offline & private — no telemetry and no cloud dependency. An ourgeo.dev account is free and entirely optional: it exists for the forum and for installing plugins, and nothing else asks for one.
  • Cross-platform — Windows & Linux today; macOS coming soon.
⬇ Download ouRGeo 📖 Read the Docs ← Back to Home