Minimalist
Accent

Retermina

A customizable terminal workspace —

Retermina beta · v0.1.0 — early acess

macOS "damaged" warning? Run xattr -cr /Applications/Retermina.app

retermina — zsh — 80×24
Explorer
▸ app/ ▸ components/ ▸ lib/ index.tsx
Code App.tsx
export function App() {
const view = useStore(s => s.view);
return <Workspace />;
}
Terminal
$ npm run dev
Claude Code
68K tok · 3 sessions
Localhost
:1420 vite· :3000 next
git push origin main
git pull --rebase

Get up and running

Download, drag to Applications, and open — three steps. macOS may quarantine the app on first launch; step 3 clears that.

1

Download the .dmg

Click Download for Mac above, or grab the latest build from the GitHub releases page.

2

Drag to Applications

Mount the .dmg and drag Retermina into your /Applications folder.

3

Clear the macOS quarantine flag

If macOS says "Retermina is damaged and can't be opened", this is Gatekeeper's quarantine — not actual corruption. Open Terminal and run:

xattr -cr /Applications/Retermina.app click to copy

Then open Retermina normally.

Everything from the Launch Hub

The same primary actions that greet you when Retermina opens — recreated here with the real card interactions from LaunchActionCard.

Launch Blank Terminal Start a fresh shell session
New File Create and edit a new file
Open Folder Open an existing project
Clone Git Repository Clone from a remote URL
Import from Terminal Pick up an existing shell's working directory

Five structural theme engines

Each engine swaps far more than accent colors — corner radius, border weight, shadows, backdrop blur, fonts, and icon stroke weight all change. Click a chip or use the switcher above.

Modular Workspace

Seven draggable, resizable panels on a react-grid-layout grid — Explorer, Terminal, Code, Localhost, Claude Code, Preview, and Changes — arranged however you work. (Try dragging the demo above.)

Iris Command Bar

A local, tokenless command bar — no API keys, no network. Macros for git, npm, and shell are ranked by fuzzy match and gated on live repo state (Push only shows when you're ahead of upstream).

Claude Code, built in

A dedicated panel that auto-launches the claude CLI in its own PTY, with a per-project token-usage strip. Spawned with theme-aware colors so output stays legible on light engines.

Live Changes panel

A project-wide git diff of your working tree that updates live — so edits the Claude CLI makes in the Terminal show up as you watch, file by file.

Real xterm.js terminals

Native shells (Zsh, Bash, PowerShell) over a Rust portable-pty, streamed to xterm.js. Split panes horizontally or vertically, each with its own PTY and per-engine palette.

Native Tauri, no cloud

A Rust + React desktop app — your shell runs locally with no token limits, no subscription, and nothing uploaded. Quick-open (⌘P), a command palette (⌘K), and self-updates are built in.

Customize down to the pixel

One frosted Settings overlay — Theme, Appearance, Font, and Version — writes straight to a persisted store, so every choice survives a restart. Change the accent, font, and workspace scale below and watch this page update live, exactly like the app does.

Theme engine Minimalist
Accent color Theme default
Text drawn on the accent flips between near-black and white by WCAG luminance — try the white swatch.
Settings · live preview
Explorer Terminal Code Changes
Good afternoon
A customizable terminal workspace
accent
$ iris git push selected

One Settings overlay

Theme, Appearance, Font, and Version in four tabs. Toggle the top-bar between icons and labels, swap the panel-toggle style, and persist it all to settings.json.

Accent + contrast-aware

Pick any hex accent and the whole app re-tints. Text drawn on the accent flips between near-black and white by WCAG luminance — try the white swatch and watch the label stay readable.

Your fonts, paired

Bundled typefaces or upload your own .ttf/.otf — copied in by Rust and registered at runtime. A pairing control suggests the font that suits the active theme.

Save it as a Loom

Bundle your theme, accent, font, scale, and full panel layout into a portable Loom — apply, export, or import it as JSON (fonts travel with it). Nothing is uploaded; presets stay on your machine.