01 The window layout
One toolbar, four zones, every panel anywhere you want it.
ouRGeo is a single window. A thin toolbar runs across the top; below it the space is divided into four zones — left, centre, right and bottom — and a zone only exists while something is open in it. Every divider can be dragged, and double-clicking one evens out the panels sharing it.
.ourgeolayout.json file to share, or restore the default from
Settings → Workspace.02 The top toolbar
Fourteen icon buttons run along the left, with Settings and the project dropdown pinned to the right. Buttons that toggle a panel turn blue while that panel is open; the rest open a dialog or perform an action. Which of the fourteen you keep, and in what order, is yours to set in Settings → Workspace.
.R script into a new editor tab.03 Project dropdown and R status
At the far right of the toolbar, next to Settings. It shows the current project’s name and carries a small coloured dot reporting whether the R backend is connected.
.ourgeoproj bundle: resets the session, restores
the saved environment, layers, plots and tabs, then reconnects any
.Rgeo databases..ourgeoproj from the current state. This is
how a scratch session becomes a real project.04 Code editor and tabs
The editor is Monaco — the same editor as VS Code — with R syntax highlighting and autocomplete driven by your live R session, so it completes on objects that actually exist and functions from packages you have actually loaded.
The tab bar
.R files and untitled
scratch) or object tabs — a data viewer or function editor bound to an
R object. Object tabs whose object no longer exists are pruned when a session is
restored.The editor toolbar
A hint strip on the left reminds you of the two run shortcuts; two buttons sit on the right.
| Keys | Action |
|---|---|
| Ctrl+Enter | Run the current line, advance the cursor |
| Shift+Enter | Run the selection, or the current line if nothing is selected |
| Ctrl+Space | Trigger autocomplete manually |
| Ctrl+S | Save the active tab |
| Ctrl+N | New tab |
| Ctrl+W | Close the active tab |
05 The R console
Titled R Console, below the editor. This is a real R prompt: anything you can type in R, you can type here, and everything the GUI does appears here too.
06 The terminal
A Terminal tab beside the R console, running your own shell — bash, zsh,
fish, PowerShell, whatever you use. There is 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.
cd to
R’s.ls looks like it belongs in the
window it is in.The AI assistant can use the terminal, but only behind a third switch in the panel
footer that is off by default and AND-ed with Autopilot. It is not a sandbox: R’s
own system() reaches the same machine. What the switch means is that you
decided, once and deliberately, that running commands on your computer is part of what
the assistant does — and every command it runs is typed into a tab you are
watching and logged to the R console.
07 Environment panel
A live browser of the objects in your R session, grouped by environment. It updates itself when R’s global environment changes — you never need to refresh it manually after running code.
.RData file into the session..RData file.08 Packages panel
Your installed R packages, with attach state. Like the environment panel it is
event-driven: library() at the console updates the panel immediately, and
the editor’s autocomplete along with it.
library() and detach().update.packages(ask = FALSE, checkBuilt = TRUE).
09 Databases panel
Manages .Rgeo datasets — DuckDB-backed containers for vector and
raster data too large to sit comfortably in memory. See
.Rgeo databases for what they are and when to use
one.
.Rgeo files..Rgeo file.10 Data Viewer
Opens as a tab rather than a panel — alongside your scripts, not in a sidebar. Toolbox runs open their result here automatically, and clicking an object in the Environment panel opens it here too.
- Data frames get a sortable, scrollable grid. An
sflayer shows its attributes with the geometry column alongside. - Matrices and vectors get their own views suited to their shape.
- Add Column and the column type dropdown let you edit structure in place.
- Viewer tabs are remembered within a session and pruned on restore if the object behind them is gone.
Tools that produce a raster skip the viewer — a SpatRaster is not tabular. Those results appear in the Environment panel and can be added to the map.
11 Plots panel
Every plot your session produces, in order, with history. Any plotting command in the console or editor lands here automatically.
With no plots yet the panel reads No plots yet. Run a plot command in the console.
12 AI Assistant
A chat panel that knows about your R session — and, if you let it, can drive it. Empty state reads Ask anything about your data or R code.
.ourgeoproj to whoever you send it to. In the scratch
workspace they last until you quit, like everything else in scratch.What it can do
Beyond answering questions, the assistant can operate ouRGeo itself — open panels and dialogs, add layers, run toolbox tools, write and run R Markdown chunks, and build and switch themes. Rather than only describing a workflow it can walk you through one in your own session, and it can point at a control and wait for you to click it instead of pressing it for you.
Actions are tiered. Navigation and reading are always allowed; anything that touches the R session or the filesystem needs Autopilot; destructive ones ask you to confirm as well. You can move any individual action between those tiers from the gear beside the Autopilot switch.
Cloud or local
ouRGeo is not tied to one vendor. Cloud providers (OpenAI, Anthropic, Google) work alongside anything speaking a compatible API on your own machine — Ollama, LM Studio, llama.cpp, Jan, LocalAI, vLLM, SGLang. With a local model nothing leaves your computer, which makes a genuinely private AI GIS assistant possible.
A Claude Pro or Max subscription counts as a provider too: ouRGeo runs the Claude Code command-line tool you already installed and signed in to, so there is no API key to paste and ouRGeo never sees a credential of yours. Usage counts against your Claude plan, and whether it covers this use is between you and Anthropic’s terms.
13 Help panel
R’s own documentation, in-app. No browser round trip, and it works offline.
Package vignettes are available here too, rendered in the panel. Typing
?st_buffer at the console opens the topic here rather than in a browser.
14 Plugins and the plugin store
A plugin adds capability while the app is running — data connectors, toolbox tools, AI actions, toolbar buttons, docs topics, R libraries and whole panels. Manage them from Settings → Plugins.
.ourgeoplugin archive somebody sent you. Archives
are checked and bounded on the way in.15 Settings
One scrolling dialog of collapsible sections rather than tabs. Open it with the gear icon at the right of the toolbar. Appearance is expanded by default.
Appearance
Theme and visual style. Theming has three independent axes, each with its own picker in this section.
.R files, and every embedded
language inside an .Rmd chunk. 26 ship, from One Dark and Dracula to
Nord, Solarized, Gruvbox and Catppuccin.The separation is a guarantee rather than a convenience. A code or markdown palette carries token colours and nothing else, so switching one can never move the editor background or the scene art behind it. Each app theme names the code and markdown palettes it starts with, and switching the app theme resets both to those — a dark syntax palette on a white background is not a coherent look. The two editor pickers are how you depart from the default, per app theme.
The ten app themes:
Interface scale is separate from the theme and is changed with Ctrl+Shift+= and Ctrl+Shift+-.
Theme Studio
Settings → Appearance → Theme Studio… opens a full editor for themes of your own, on all three axes. It has a tab per axis, a list of your themes above the ones that ship, and a live preview that updates as you type without changing the running application — so you can look at a theme you have not switched to.
Every theme starts as a copy. There is no blank theme, on purpose: an app theme has sixteen colours, and starting from nothing produces something that clashes with whichever ones you forgot. Press New, pick the closest existing theme — one of ouRGeo’s or one of your own — name it, and change what you like. The themes that ship are read-only, because an ouRGeo update would overwrite an edit and leave nothing to reset to; Duplicate to edit is the way in.
A code or markdown theme is simpler: a name, whether it is listed for dark or light app themes, and its colours. A code palette has eleven (identifiers, comments, keywords, constants, strings, numbers, operators, functions, tags, delimiters, errors); a markdown palette has nine (body text, headings, emphasis, links, code, quotes, meta, HTML, escapes). Contrast is measured against the editor background of the app theme you are using, because that is the surface the palette will be read on — a palette carries no background of its own.
Your own artwork
An app theme can carry two images, both optional and both embedded in the theme rather than referenced by path — so an exported theme arrives on another machine with its pictures intact.
Sharing themes
Any theme you have made exports to a .ourgeotheme.json file — plain
JSON, artwork and all — and imports back from one. The file declares which axis
it belongs to, so an app theme dropped into the Code Themes list is refused with a
sentence naming what the file actually is and which tab takes it, rather than a
cryptic parse error. Files written by a newer version of ouRGeo, and files that are
not themes at all, are turned away the same way.
The AI assistant can drive all of this: ask it for “a warm, low-contrast dark theme” and it will copy the closest one, adjust the colours, check its own contrast ratios, and switch you to it.
Workspace
Panel arrangement — dragging, saved layouts, and the way back. The one
place that shows you the whole arrangement at once: which panel
is in which zone, whether each zone splits or tabs, and which toolbar buttons appear
and in what order. Add a second code editor or remove one here, save the arrangement
as a named preset, export it as an .ourgeolayout.json file, or
restore the default arrangement — which is what you want after moving
something by accident. Panel dragging ships off; switching it on reveals a grip
on every panel header, and with it a right-click menu to move, add or remove a
panel.
Terminal
Which shell opens, and how it looks. Pick the shell new tabs start (your login shell by default), set the font size and cursor style, and choose whether the terminal gets its own pane beside the console or shares a tab strip with it. The pane setting reads the live layout, so a terminal you have dragged elsewhere honestly reads as off — it is beside nothing.
R Backend
Which R installation powers ouRGeo. ouRGeo detects the R installations on your machine and lists them; pick one and R restarts against it. If yours is not found, Browse for Rscript… points the app at a specific executable. Your choice is remembered. While scanning, the panel reads Detecting R installations…; if it finds none, No R installations detected. A successful switch confirms with R restarted successfully.
Spatial Editor
Map extent, drawing, and coordinate systems. Three sub-sections:
Documents
Markdown and R Markdown authoring. Settings for
.md/.Rmd/.qmd documents, including which engine
the Chunk: current map action generates — tmap,
ggplot2, or whichever Export dialog you used last.
Basemaps
Access tokens for basemap tile providers. Providers that need an API key get a field here. Providers that do not need one work without any configuration.
Data API Keys
Keys for external data sources. For web-API providers in the Data Connector that require authentication. Most public open-data endpoints do not.
AI Assistant
AI provider and model configuration.
Voice input
Dictate to the assistant — microphone, and who transcribes it. Choose the input device and the transcription service. The default runs on your machine: ouRGeo downloads a speech model on first use and never sends the audio anywhere. Cloud services (OpenAI-compatible, Deepgram, ElevenLabs, AssemblyAI) are available and each upload is logged to the R console, so the console stays a complete record. Recorded audio is never written to disk.
Plugins
Capabilities added to ouRGeo without rebuilding it. The plugin list, the enable switches, Plugin Store…, install from file, and the update check. See Plugins and the plugin store.
Version history
A View version history action shows what changed in each release of ouRGeo.