From 2b8a543eff54c32e0af34b5b252a103e4b64b67c Mon Sep 17 00:00:00 2001 From: Neil <4138956+nwparker@users.noreply.github.com> Date: Mon, 16 Mar 2026 21:53:49 -0700 Subject: [PATCH] Basic terminal support --- .gitignore | 3 + package.json | 8 +- pnpm-lock.yaml | 63 ++++ resources/icon-dev.png | Bin 0 -> 91425 bytes resources/icon.png | Bin 35949 -> 101107 bytes src/main/index.ts | 255 ++++++++++++++-- src/preload/index.d.ts | 28 +- src/preload/index.ts | 44 ++- src/renderer/index.html | 4 +- src/renderer/src/App.tsx | 73 +++-- src/renderer/src/assets/base.css | 65 +--- src/renderer/src/assets/electron.svg | 10 - src/renderer/src/assets/main.css | 319 ++++++++++--------- src/renderer/src/assets/wavy-lines.svg | 25 -- src/renderer/src/components/Landing.tsx | 17 ++ src/renderer/src/components/Sidebar.tsx | 42 +++ src/renderer/src/components/Terminal.tsx | 374 +++++++++++++++++++++++ src/renderer/src/components/Versions.tsx | 15 - src/renderer/src/store.ts | 47 +++ 19 files changed, 1092 insertions(+), 300 deletions(-) create mode 100644 resources/icon-dev.png delete mode 100644 src/renderer/src/assets/electron.svg delete mode 100644 src/renderer/src/assets/wavy-lines.svg create mode 100644 src/renderer/src/components/Landing.tsx create mode 100644 src/renderer/src/components/Sidebar.tsx create mode 100644 src/renderer/src/components/Terminal.tsx delete mode 100644 src/renderer/src/components/Versions.tsx create mode 100644 src/renderer/src/store.ts diff --git a/.gitignore b/.gitignore index 9d9bd4bfe..1e182e540 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ +# Build artifacts +tsconfig.*.tsbuildinfo + # Dependencies node_modules/ diff --git a/package.json b/package.json index f9879e8a1..f61813a60 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,10 @@ "dependencies": { "@electron-toolkit/preload": "^3.0.2", "@electron-toolkit/utils": "^4.0.0", - "electron-updater": "^6.3.9" + "electron-updater": "^6.3.9", + "node-pty": "^1.1.0", + "restty": "^0.1.34", + "zustand": "^5.0.12" }, "devDependencies": { "@electron-toolkit/tsconfig": "^2.0.0", @@ -56,7 +59,8 @@ "pnpm": { "onlyBuiltDependencies": [ "electron", - "esbuild" + "esbuild", + "node-pty" ] } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7dc8f9dc9..927de3b61 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -17,6 +17,15 @@ importers: electron-updater: specifier: ^6.3.9 version: 6.8.3 + node-pty: + specifier: ^1.1.0 + version: 1.1.0 + restty: + specifier: ^0.1.34 + version: 0.1.34(typescript@5.9.3) + zustand: + specifier: ^5.0.12 + version: 5.0.12(@types/react@19.2.14)(react@19.2.4) devDependencies: '@electron-toolkit/tsconfig': specifier: ^2.0.0 @@ -1869,6 +1878,9 @@ packages: node-addon-api@1.7.2: resolution: {integrity: sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==} + node-addon-api@7.1.1: + resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} + node-api-version@0.2.1: resolution: {integrity: sha512-2xP/IGGMmmSQpI1+O/k72jF/ykvZ89JeuKX3TLJAYPDVLUalrshrLHkeVcCCZqG/eEa635cr8IBYzgnDvM2O8Q==} @@ -1877,6 +1889,9 @@ packages: engines: {node: ^18.17.0 || >=20.5.0} hasBin: true + node-pty@1.1.0: + resolution: {integrity: sha512-20JqtutY6JPXTUnL0ij1uad7Qe1baT46lyolh2sSENDd4sTzKZ4nmAFkeAARDKwmlLjPx6XKRlwRUxwjOy+lUg==} + node-releases@2.0.36: resolution: {integrity: sha512-TdC8FSgHz8Mwtw9g5L4gR/Sh9XhSP/0DEkQxfEFXOpiul5IiHgHan2VhYYb6agDSfp4KuvltmGApc8HMgUrIkA==} @@ -2046,6 +2061,10 @@ packages: resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} engines: {node: '>=18'} + restty@0.1.34: + resolution: {integrity: sha512-466w3EXe/yLNfO8Jbha6tLLTij1QRI2MnKbm0UHCmP33Avon4YikIeIIPW1ga1A9310poAcnkoXPeV0b84Yyxw==} + engines: {bun: '>=1.2.0'} + retry@0.12.0: resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} engines: {node: '>= 4'} @@ -2218,6 +2237,11 @@ packages: resolution: {integrity: sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==} engines: {node: '>=6.0.0'} + text-shaper@0.1.18: + resolution: {integrity: sha512-ZfuqKPupphWz6OS3IhlEc5tPmJFmOJVqhp5Q4uQc32zrHwfu6uY/cIsv0i/tirUVSfVDohmVpuGr5lYOVyK13w==} + peerDependencies: + typescript: ^5 + tiny-async-pool@1.3.0: resolution: {integrity: sha512-01EAw5EDrcVrdgyCLgoSPvqznC0sVxDSVeiOz09FUpjh71G79VCqneOr+xvt7T1r76CF6ZZfPjHorN2+d+3mqA==} @@ -2402,6 +2426,24 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} + zustand@5.0.12: + resolution: {integrity: sha512-i77ae3aZq4dhMlRhJVCYgMLKuSiZAaUPAct2AksxQ+gOtimhGMdXljRT21P5BNpeT4kXlLIckvkPM029OljD7g==} + engines: {node: '>=12.20.0'} + peerDependencies: + '@types/react': '>=18.0.0' + immer: '>=9.0.6' + react: '>=18.0.0' + use-sync-external-store: '>=1.2.0' + peerDependenciesMeta: + '@types/react': + optional: true + immer: + optional: true + react: + optional: true + use-sync-external-store: + optional: true + snapshots: 7zip-bin@5.2.0: {} @@ -4171,6 +4213,8 @@ snapshots: node-addon-api@1.7.2: optional: true + node-addon-api@7.1.1: {} + node-api-version@0.2.1: dependencies: semver: 7.7.4 @@ -4190,6 +4234,10 @@ snapshots: transitivePeerDependencies: - supports-color + node-pty@1.1.0: + dependencies: + node-addon-api: 7.1.1 + node-releases@2.0.36: {} nopt@8.1.0: @@ -4382,6 +4430,12 @@ snapshots: onetime: 7.0.0 signal-exit: 4.1.0 + restty@0.1.34(typescript@5.9.3): + dependencies: + text-shaper: 0.1.18(typescript@5.9.3) + transitivePeerDependencies: + - typescript + retry@0.12.0: {} rfdc@1.4.1: {} @@ -4586,6 +4640,10 @@ snapshots: mkdirp: 0.5.6 rimraf: 2.6.3 + text-shaper@0.1.18(typescript@5.9.3): + dependencies: + typescript: 5.9.3 + tiny-async-pool@1.3.0: dependencies: semver: 5.7.2 @@ -4729,3 +4787,8 @@ snapshots: fd-slicer: 1.1.0 yocto-queue@0.1.0: {} + + zustand@5.0.12(@types/react@19.2.14)(react@19.2.4): + optionalDependencies: + '@types/react': 19.2.14 + react: 19.2.4 diff --git a/resources/icon-dev.png b/resources/icon-dev.png new file mode 100644 index 0000000000000000000000000000000000000000..ea440731bcfc4f016fca5543aaab0c0bb3ad5576 GIT binary patch literal 91425 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 ldFn3i<>zJ#aD-Ue+w!-XMw-}@)- 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�-jV04w`%9YIG%JA#HlXD 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

(|V7O%OOlsc*vU+P^72X!U7K_eX*CG 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 E`T9pxN5i1O>p>VAy6%lIREYyb! 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 Kl11VsAO0U5dJ04U diff --git a/src/main/index.ts b/src/main/index.ts index 06e06b4c5..17e60ffd4 100644 --- a/src/main/index.ts +++ b/src/main/index.ts @@ -1,16 +1,35 @@ -import { app, shell, BrowserWindow, ipcMain } from 'electron' +import { app, shell, BrowserWindow, ipcMain, Menu, nativeImage } from 'electron' import { join } from 'path' +import { execSync } from 'child_process' import { electronApp, optimizer, is } from '@electron-toolkit/utils' import icon from '../../resources/icon.png?asset' +import devIcon from '../../resources/icon-dev.png?asset' +import * as pty from 'node-pty' -function createWindow(): void { - // Create the browser window. +// Enable WebGPU in Electron +app.commandLine.appendSwitch('enable-features', 'Vulkan,UseSkiaGraphite') +app.commandLine.appendSwitch('enable-unsafe-webgpu') + +// --------------------------------------------------------------------------- +// PTY instance tracking +// --------------------------------------------------------------------------- +let ptyCounter = 0 +const ptyProcesses = new Map() + +// --------------------------------------------------------------------------- +// Window creation +// --------------------------------------------------------------------------- +function createWindow(): BrowserWindow { const mainWindow = new BrowserWindow({ - width: 900, - height: 670, + width: 1200, + height: 800, + minWidth: 600, + minHeight: 400, show: false, autoHideMenuBar: true, - ...(process.platform === 'linux' ? { icon } : {}), + titleBarStyle: process.platform === 'darwin' ? 'hiddenInset' : undefined, + ...(process.platform === 'darwin' ? { trafficLightPosition: { x: 16, y: 12 } } : {}), + icon: is.dev ? devIcon : icon, webPreferences: { preload: join(__dirname, '../preload/index.js'), sandbox: false @@ -33,42 +52,230 @@ function createWindow(): void { } else { mainWindow.loadFile(join(__dirname, '../renderer/index.html')) } + + return mainWindow } -// This method will be called when Electron has finished -// initialization and is ready to create browser windows. -// Some APIs can only be used after this event occurs. +// --------------------------------------------------------------------------- +// Worktree helpers +// --------------------------------------------------------------------------- +interface WorktreeInfo { + path: string + head: string + branch: string + isBare: boolean +} + +function parseWorktreeList(output: string): WorktreeInfo[] { + const worktrees: WorktreeInfo[] = [] + const blocks = output.trim().split('\n\n') + + for (const block of blocks) { + if (!block.trim()) continue + + const lines = block.trim().split('\n') + let path = '' + let head = '' + let branch = '' + let isBare = false + + for (const line of lines) { + if (line.startsWith('worktree ')) { + path = line.slice('worktree '.length) + } else if (line.startsWith('HEAD ')) { + head = line.slice('HEAD '.length) + } else if (line.startsWith('branch ')) { + branch = line.slice('branch '.length) + } else if (line === 'bare') { + isBare = true + } + } + + if (path) { + worktrees.push({ path, head, branch, isBare }) + } + } + + return worktrees +} + +// --------------------------------------------------------------------------- +// App lifecycle +// --------------------------------------------------------------------------- app.whenReady().then(() => { - // Set app user model id for windows electronApp.setAppUserModelId('com.electron') - // Default open or close DevTools by F12 in development - // and ignore CommandOrControl + R in production. - // see https://github.com/alex8088/electron-toolkit/tree/master/packages/utils + if (process.platform === 'darwin') { + const dockIcon = nativeImage.createFromPath(is.dev ? devIcon : icon) + app.dock.setIcon(dockIcon) + } + app.on('browser-window-created', (_, window) => { optimizer.watchWindowShortcuts(window) }) - // IPC test - ipcMain.on('ping', () => console.log('pong')) + // Override default menu to prevent Cmd+W from closing the window. + // The renderer handles Cmd+W to close terminal panes instead. + const template: Electron.MenuItemConstructorOptions[] = [ + { + label: app.name, + submenu: [ + { role: 'about' }, + { type: 'separator' }, + { role: 'services' }, + { type: 'separator' }, + { role: 'hide' }, + { role: 'hideOthers' }, + { role: 'unhide' }, + { type: 'separator' }, + { role: 'quit' } + ] + }, + { + label: 'Edit', + submenu: [ + { role: 'undo' }, + { role: 'redo' }, + { type: 'separator' }, + { role: 'cut' }, + { role: 'copy' }, + { role: 'paste' }, + { role: 'selectAll' } + ] + }, + { + label: 'View', + submenu: [ + { role: 'reload' }, + { role: 'forceReload' }, + { role: 'toggleDevTools' }, + { type: 'separator' }, + { role: 'resetZoom' }, + { role: 'zoomIn' }, + { role: 'zoomOut' }, + { type: 'separator' }, + { role: 'togglefullscreen' } + ] + }, + { + label: 'Window', + submenu: [{ role: 'minimize' }, { role: 'zoom' }] + } + ] + Menu.setApplicationMenu(Menu.buildFromTemplate(template)) - createWindow() + const mainWindow = createWindow() + // ------------------------------------------------------------------------- + // PTY IPC handlers + // ------------------------------------------------------------------------- + ipcMain.handle('pty:spawn', (_event, args: { cols: number; rows: number; cwd?: string }) => { + const id = String(++ptyCounter) + const shell = process.env.SHELL || '/bin/zsh' + + const ptyProcess = pty.spawn(shell, [], { + name: 'xterm-256color', + cols: args.cols, + rows: args.rows, + cwd: args.cwd || process.env.HOME || '/', + env: { + ...process.env, + TERM: 'xterm-256color', + COLORTERM: 'truecolor' + } as Record + }) + + ptyProcesses.set(id, ptyProcess) + + ptyProcess.onData((data) => { + if (!mainWindow.isDestroyed()) { + mainWindow.webContents.send('pty:data', { id, data }) + } + }) + + ptyProcess.onExit(({ exitCode }) => { + ptyProcesses.delete(id) + if (!mainWindow.isDestroyed()) { + mainWindow.webContents.send('pty:exit', { id, code: exitCode }) + } + }) + + return { id } + }) + + ipcMain.on('pty:write', (_event, args: { id: string; data: string }) => { + const proc = ptyProcesses.get(args.id) + if (proc) { + proc.write(args.data) + } + }) + + ipcMain.handle('pty:resize', (_event, args: { id: string; cols: number; rows: number }) => { + const proc = ptyProcesses.get(args.id) + if (proc) { + proc.resize(args.cols, args.rows) + } + }) + + ipcMain.handle('pty:kill', (_event, args: { id: string }) => { + const proc = ptyProcesses.get(args.id) + if (proc) { + proc.kill() + ptyProcesses.delete(args.id) + } + }) + + // ------------------------------------------------------------------------- + // Worktree IPC handlers + // ------------------------------------------------------------------------- + ipcMain.handle('worktrees:list', (_event, args: { cwd: string }): WorktreeInfo[] => { + try { + const output = execSync('git worktree list --porcelain', { + cwd: args.cwd, + encoding: 'utf-8' + }) + return parseWorktreeList(output) + } catch { + return [] + } + }) + + ipcMain.handle('worktrees:get-current', (_event): WorktreeInfo[] => { + try { + const repoRoot = execSync('git rev-parse --show-toplevel', { + encoding: 'utf-8' + }).trim() + + const output = execSync('git worktree list --porcelain', { + cwd: repoRoot, + encoding: 'utf-8' + }) + return parseWorktreeList(output) + } catch { + return [] + } + }) + + // ------------------------------------------------------------------------- + // macOS re-activate + // ------------------------------------------------------------------------- app.on('activate', function () { - // On macOS it's common to re-create a window in the app when the - // dock icon is clicked and there are no other windows open. if (BrowserWindow.getAllWindows().length === 0) createWindow() }) }) -// Quit when all windows are closed, except on macOS. There, it's common -// for applications and their menu bar to stay active until the user quits -// explicitly with Cmd + Q. +// --------------------------------------------------------------------------- +// Cleanup +// --------------------------------------------------------------------------- +app.on('before-quit', () => { + for (const [id, proc] of ptyProcesses) { + proc.kill() + ptyProcesses.delete(id) + } +}) + app.on('window-all-closed', () => { if (process.platform !== 'darwin') { app.quit() } }) - -// In this file you can include the rest of your app's specific main process -// code. You can also put them in separate files and require them here. diff --git a/src/preload/index.d.ts b/src/preload/index.d.ts index a15366957..47da95943 100644 --- a/src/preload/index.d.ts +++ b/src/preload/index.d.ts @@ -1,8 +1,34 @@ import { ElectronAPI } from '@electron-toolkit/preload' +interface WorktreeInfo { + path: string + head: string + branch: string + isBare: boolean +} + +interface PtyApi { + spawn: (opts: { cols: number; rows: number; cwd?: string }) => Promise<{ id: string }> + write: (id: string, data: string) => void + resize: (id: string, cols: number, rows: number) => void + kill: (id: string) => Promise + onData: (callback: (data: { id: string; data: string }) => void) => () => void + onExit: (callback: (data: { id: string; code: number }) => void) => () => void +} + +interface WorktreesApi { + list: (cwd: string) => Promise + getCurrent: () => Promise +} + +interface Api { + pty: PtyApi + worktrees: WorktreesApi +} + declare global { interface Window { electron: ElectronAPI - api: unknown + api: Api } } diff --git a/src/preload/index.ts b/src/preload/index.ts index 2d1852475..3e3571ff1 100644 --- a/src/preload/index.ts +++ b/src/preload/index.ts @@ -1,8 +1,48 @@ -import { contextBridge } from 'electron' +import { contextBridge, ipcRenderer } from 'electron' import { electronAPI } from '@electron-toolkit/preload' // Custom APIs for renderer -const api = {} +const api = { + pty: { + spawn: (opts: { cols: number; rows: number; cwd?: string }): Promise<{ id: string }> => + ipcRenderer.invoke('pty:spawn', opts), + + write: (id: string, data: string): void => { + ipcRenderer.send('pty:write', { id, data }) + }, + + resize: (id: string, cols: number, rows: number): void => { + ipcRenderer.invoke('pty:resize', { id, cols, rows }) + }, + + kill: (id: string): Promise => ipcRenderer.invoke('pty:kill', { id }), + + onData: (callback: (data: { id: string; data: string }) => void): (() => void) => { + const listener = (_event: Electron.IpcRendererEvent, data: { id: string; data: string }) => + callback(data) + ipcRenderer.on('pty:data', listener) + return () => ipcRenderer.removeListener('pty:data', listener) + }, + + onExit: (callback: (data: { id: string; code: number }) => void): (() => void) => { + const listener = (_event: Electron.IpcRendererEvent, data: { id: string; code: number }) => + callback(data) + ipcRenderer.on('pty:exit', listener) + return () => ipcRenderer.removeListener('pty:exit', listener) + } + }, + + worktrees: { + list: ( + cwd: string + ): Promise> => + ipcRenderer.invoke('worktrees:list', { cwd }), + + getCurrent: (): Promise< + Array<{ path: string; head: string; branch: string; isBare: boolean }> + > => ipcRenderer.invoke('worktrees:get-current') + } +} // Use `contextBridge` APIs to expose Electron APIs to // renderer only if context isolation is enabled, otherwise diff --git a/src/renderer/index.html b/src/renderer/index.html index e198e05e4..b74c4d75d 100644 --- a/src/renderer/index.html +++ b/src/renderer/index.html @@ -2,11 +2,11 @@ - Electron + Orca diff --git a/src/renderer/src/App.tsx b/src/renderer/src/App.tsx index 73de51c9e..fed553e4e 100644 --- a/src/renderer/src/App.tsx +++ b/src/renderer/src/App.tsx @@ -1,34 +1,57 @@ -import Versions from './components/Versions' -import electronLogo from './assets/electron.svg' +import { useEffect } from 'react' +import { useAppStore } from './store' +import Sidebar from './components/Sidebar' +import Terminal from './components/Terminal' +import Landing from './components/Landing' function App(): React.JSX.Element { - const ipcHandle = (): void => window.electron.ipcRenderer.send('ping') + const toggleSidebar = useAppStore((s) => s.toggleSidebar) + const showTerminal = useAppStore((s) => s.showTerminal) + const setShowTerminal = useAppStore((s) => s.setShowTerminal) + const terminalTitle = useAppStore((s) => s.terminalTitle) + + // Enter key on landing page to spawn a new terminal + useEffect(() => { + if (showTerminal) return + const onKeyDown = (e: KeyboardEvent): void => { + if (e.key === 'Enter' && !e.repeat) { + e.preventDefault() + setShowTerminal(true) + } + } + window.addEventListener('keydown', onKeyDown) + return () => window.removeEventListener('keydown', onKeyDown) + }, [showTerminal, setShowTerminal]) return ( - <> - logo -

Powered by electron-vite
-
- Build an Electron app with React -  and TypeScript -
-

- Please try pressing F12 to open the devTool -

-
- -
- - Send IPC - +
+
+
+ +
+ {showTerminal && terminalTitle ? terminalTitle : 'Orca'}
+
- - +
+ + {showTerminal ? : } +
+
) } diff --git a/src/renderer/src/assets/base.css b/src/renderer/src/assets/base.css index 5ed6406a3..8a41cc9ad 100644 --- a/src/renderer/src/assets/base.css +++ b/src/renderer/src/assets/base.css @@ -1,34 +1,12 @@ :root { - --ev-c-white: #ffffff; - --ev-c-white-soft: #f8f8f8; - --ev-c-white-mute: #f2f2f2; - - --ev-c-black: #1b1b1f; - --ev-c-black-soft: #222222; - --ev-c-black-mute: #282828; - - --ev-c-gray-1: #515c67; - --ev-c-gray-2: #414853; - --ev-c-gray-3: #32363f; - - --ev-c-text-1: rgba(255, 255, 245, 0.86); - --ev-c-text-2: rgba(235, 235, 245, 0.6); - --ev-c-text-3: rgba(235, 235, 245, 0.38); - - --ev-button-alt-border: transparent; - --ev-button-alt-text: var(--ev-c-text-1); - --ev-button-alt-bg: var(--ev-c-gray-3); - --ev-button-alt-hover-border: transparent; - --ev-button-alt-hover-text: var(--ev-c-text-1); - --ev-button-alt-hover-bg: var(--ev-c-gray-2); -} - -:root { - --color-background: var(--ev-c-black); - --color-background-soft: var(--ev-c-black-soft); - --color-background-mute: var(--ev-c-black-mute); - - --color-text: var(--ev-c-text-1); + --bg-primary: #181818; + --bg-sidebar: #1a1a1a; + --bg-titlebar: #1e1e1e; + --border-color: #2a2a2a; + --text-primary: rgba(255, 255, 245, 0.86); + --text-secondary: rgba(235, 235, 245, 0.6); + --text-muted: rgba(235, 235, 245, 0.38); + --accent: #7c93ee; } *, @@ -36,7 +14,7 @@ *::after { box-sizing: border-box; margin: 0; - font-weight: normal; + padding: 0; } ul { @@ -44,24 +22,13 @@ ul { } body { - min-height: 100vh; - color: var(--color-text); - background: var(--color-background); - line-height: 1.6; - font-family: - Inter, - -apple-system, - BlinkMacSystemFont, - 'Segoe UI', - Roboto, - Oxygen, - Ubuntu, - Cantarell, - 'Fira Sans', - 'Droid Sans', - 'Helvetica Neue', - sans-serif; - text-rendering: optimizeLegibility; + margin: 0; + padding: 0; + overflow: hidden; + height: 100vh; + background: var(--bg-primary); + color: var(--text-primary); + font-family: 'SF Mono', SFMono-Regular, Menlo, Consolas, 'Liberation Mono', monospace; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } diff --git a/src/renderer/src/assets/electron.svg b/src/renderer/src/assets/electron.svg deleted file mode 100644 index 45ef09cf4..000000000 --- a/src/renderer/src/assets/electron.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/renderer/src/assets/main.css b/src/renderer/src/assets/main.css index 0179fc4c2..f1366b0bb 100644 --- a/src/renderer/src/assets/main.css +++ b/src/renderer/src/assets/main.css @@ -1,171 +1,200 @@ @import './base.css'; -body { - display: flex; - align-items: center; - justify-content: center; +/* ── Layout ───────────────────────────────────────────── */ + +#root { + height: 100vh; + width: 100vw; overflow: hidden; - background-image: url('./wavy-lines.svg'); - background-size: cover; +} + +.app-layout { + display: flex; + flex-direction: column; + height: 100vh; + width: 100vw; + overflow: hidden; +} + +/* ── Titlebar ─────────────────────────────────────────── */ + +.titlebar { + height: 38px; + min-height: 38px; + display: flex; + flex-direction: row; + align-items: center; + background: var(--bg-titlebar); + border-bottom: 1px solid var(--border-color); + -webkit-app-region: drag; user-select: none; } -code { - font-weight: 600; - padding: 3px 5px; - border-radius: 2px; - background-color: var(--color-background-mute); - font-family: - ui-monospace, - SFMono-Regular, - SF Mono, - Menlo, - Consolas, - Liberation Mono, - monospace; - font-size: 85%; +.titlebar-traffic-light-pad { + width: 80px; + flex-shrink: 0; } -#root { +.sidebar-toggle { + -webkit-app-region: no-drag; + background: none; + border: none; + color: var(--text-secondary); + cursor: pointer; + padding: 4px 8px; display: flex; align-items: center; justify-content: center; - flex-direction: column; - margin-bottom: 80px; + border-radius: 4px; + transition: background 150ms; } -.logo { - margin-bottom: 20px; - -webkit-user-drag: none; - height: 128px; - width: 128px; - will-change: filter; - transition: filter 300ms; +.sidebar-toggle:hover { + background: rgba(255, 255, 255, 0.08); + color: var(--text-primary); } -.logo:hover { - filter: drop-shadow(0 0 1.2em #6988e6aa); -} - -.creator { - font-size: 14px; - line-height: 16px; - color: var(--ev-c-text-2); - font-weight: 600; - margin-bottom: 10px; -} - -.text { - font-size: 28px; - color: var(--ev-c-text-1); - font-weight: 700; - line-height: 32px; - text-align: center; - margin: 0 10px; - padding: 16px 0; -} - -.tip { - font-size: 16px; - line-height: 24px; - color: var(--ev-c-text-2); - font-weight: 600; -} - -.react { - background: -webkit-linear-gradient(315deg, #087ea4 55%, #7c93ee); - background-clip: text; - -webkit-background-clip: text; - -webkit-text-fill-color: transparent; - font-weight: 700; -} - -.ts { - background: -webkit-linear-gradient(315deg, #3178c6 45%, #f0dc4e); - background-clip: text; - -webkit-background-clip: text; - -webkit-text-fill-color: transparent; - font-weight: 700; -} - -.actions { - display: flex; - padding-top: 32px; - margin: -6px; - flex-wrap: wrap; - justify-content: flex-start; -} - -.action { - flex-shrink: 0; - padding: 6px; -} - -.action a { - cursor: pointer; - text-decoration: none; - display: inline-block; - border: 1px solid transparent; - text-align: center; - font-weight: 600; +.titlebar-title { + font-size: 13px; + font-weight: 500; + color: var(--text-secondary); + margin-left: 8px; white-space: nowrap; - border-radius: 20px; - padding: 0 20px; - line-height: 38px; - font-size: 14px; - border-color: var(--ev-button-alt-border); - color: var(--ev-button-alt-text); - background-color: var(--ev-button-alt-bg); -} - -.action a:hover { - border-color: var(--ev-button-alt-hover-border); - color: var(--ev-button-alt-hover-text); - background-color: var(--ev-button-alt-hover-bg); -} - -.versions { - position: absolute; - bottom: 30px; - margin: 0 auto; - padding: 15px 0; - font-family: 'Menlo', 'Lucida Console', monospace; - display: inline-flex; overflow: hidden; + text-overflow: ellipsis; + min-width: 0; + flex: 1; +} + +.titlebar-spacer { + width: 16px; + flex-shrink: 0; +} + +/* ── Content ──────────────────────────────────────────── */ + +.content-area { + display: flex; + flex-direction: row; + flex: 1; + overflow: hidden; +} + +/* ── Sidebar ──────────────────────────────────────────── */ + +.sidebar { + width: 240px; + flex-shrink: 0; + background: var(--bg-sidebar); + border-right: 1px solid var(--border-color); + overflow-y: auto; + overflow-x: hidden; + transition: width 200ms ease; +} + +.sidebar.collapsed { + width: 0; + border-right: none; + overflow: hidden; +} + +.sidebar-header { + padding: 12px 16px 8px; + font-size: 11px; + font-weight: 600; + text-transform: uppercase; + letter-spacing: 0.05em; + color: var(--text-muted); +} + +.worktree-list { + padding: 0 4px; +} + +.worktree-item { + display: flex; + flex-direction: column; + gap: 2px; + padding: 8px 12px; + border-radius: 6px; + cursor: pointer; + transition: background 120ms; +} + +.worktree-item:hover { + background: rgba(255, 255, 255, 0.05); +} + +.worktree-item.active { + background: rgba(255, 255, 255, 0.08); +} + +.worktree-branch { + font-size: 13px; + font-family: 'SF Mono', SFMono-Regular, Menlo, Consolas, monospace; + color: var(--text-primary); + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.worktree-path { + font-size: 11px; + color: var(--text-muted); + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +/* ── Terminal ─────────────────────────────────────────── */ + +.terminal-container { + flex: 1; + overflow: hidden; + position: relative; +} + +/* ── Landing ─────────────────────────────────────────── */ + +.landing { + flex: 1; + display: flex; align-items: center; - border-radius: 22px; - background-color: #202127; - backdrop-filter: blur(24px); + justify-content: center; + background: var(--bg-primary); } -.versions li { - display: block; - float: left; - border-right: 1px solid var(--ev-c-gray-1); - padding: 0 20px; +.landing-content { + display: flex; + flex-direction: column; + align-items: center; + gap: 16px; +} + +.landing-title { + font-size: 48px; + font-weight: 700; + color: var(--text-secondary); + letter-spacing: -0.02em; +} + +.landing-action { + background: rgba(255, 255, 255, 0.06); + border: 1px solid var(--border-color); + color: var(--text-primary); + font-family: inherit; font-size: 14px; - line-height: 14px; - opacity: 0.8; - &:last-child { - border: none; - } + padding: 8px 24px; + border-radius: 6px; + cursor: pointer; + transition: background 150ms; } -@media (max-width: 720px) { - .text { - font-size: 20px; - } +.landing-action:hover { + background: rgba(255, 255, 255, 0.1); } -@media (max-width: 620px) { - .versions { - display: none; - } -} - -@media (max-width: 350px) { - .tip, - .actions { - display: none; - } +.landing-hint { + font-size: 12px; + color: var(--text-muted); } diff --git a/src/renderer/src/assets/wavy-lines.svg b/src/renderer/src/assets/wavy-lines.svg deleted file mode 100644 index d08c61199..000000000 --- a/src/renderer/src/assets/wavy-lines.svg +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/renderer/src/components/Landing.tsx b/src/renderer/src/components/Landing.tsx new file mode 100644 index 000000000..3f41696ad --- /dev/null +++ b/src/renderer/src/components/Landing.tsx @@ -0,0 +1,17 @@ +import { useAppStore } from '../store' + +export default function Landing(): React.JSX.Element { + const setShowTerminal = useAppStore((s) => s.setShowTerminal) + + return ( +
+
+

Orca

+ + or press Enter +
+
+ ) +} diff --git a/src/renderer/src/components/Sidebar.tsx b/src/renderer/src/components/Sidebar.tsx new file mode 100644 index 000000000..6cd7cb0ed --- /dev/null +++ b/src/renderer/src/components/Sidebar.tsx @@ -0,0 +1,42 @@ +import { useEffect } from 'react' +import { useAppStore } from '../store' + +function branchDisplayName(branch: string): string { + return branch.replace(/^refs\/heads\//, '') +} + +function pathBasename(p: string): string { + return p.split('/').pop() || p +} + +export default function Sidebar(): React.JSX.Element { + const sidebarOpen = useAppStore((s) => s.sidebarOpen) + const worktrees = useAppStore((s) => s.worktrees) + const activeWorktree = useAppStore((s) => s.activeWorktree) + const setActiveWorktree = useAppStore((s) => s.setActiveWorktree) + const fetchWorktrees = useAppStore((s) => s.fetchWorktrees) + + useEffect(() => { + fetchWorktrees() + }, [fetchWorktrees]) + + return ( +
+
Worktrees
+
    + {worktrees.map((wt) => ( +
  • setActiveWorktree(wt.path)} + > + + {wt.isBare ? '(bare)' : branchDisplayName(wt.branch)} + + {pathBasename(wt.path)} +
  • + ))} +
+
+ ) +} diff --git a/src/renderer/src/components/Terminal.tsx b/src/renderer/src/components/Terminal.tsx new file mode 100644 index 000000000..a5a63fc7a --- /dev/null +++ b/src/renderer/src/components/Terminal.tsx @@ -0,0 +1,374 @@ +import { useEffect, useRef } from 'react' +import { Restty, getBuiltinTheme } from 'restty' +import { useAppStore } from '../store' + +type PtyTransport = { + connect: (options: { + url: string + cols?: number + rows?: number + callbacks: { + onConnect?: () => void + onDisconnect?: () => void + onData?: (data: string) => void + onStatus?: (shell: string) => void + onError?: (message: string, errors?: string[]) => void + onExit?: (code: number) => void + } + }) => void | Promise + disconnect: () => void + sendInput: (data: string) => boolean + resize: ( + cols: number, + rows: number, + meta?: { widthPx?: number; heightPx?: number; cellW?: number; cellH?: number } + ) => boolean + isConnected: () => boolean + destroy?: () => void | Promise +} + +// OSC 0/1/2 title regex: \x1b]N;title(\x07|\x1b\\) +// Handles both BEL and ST terminators, and partial sequences across chunks +const OSC_TITLE_RE = /\x1b\]([012]);([^\x07\x1b]*?)(?:\x07|\x1b\\)/g + +function extractLastOscTitle(data: string): string | null { + let last: string | null = null + let m: RegExpExecArray | null + OSC_TITLE_RE.lastIndex = 0 + while ((m = OSC_TITLE_RE.exec(data)) !== null) { + last = m[2] + } + return last +} + +function createIpcPtyTransport( + cwd?: string, + onPtyExit?: () => void, + onTitleChange?: (title: string) => void +): PtyTransport { + let connected = false + let ptyId: string | null = null + let storedCallbacks: { + onConnect?: () => void + onDisconnect?: () => void + onData?: (data: string) => void + onStatus?: (shell: string) => void + onError?: (message: string, errors?: string[]) => void + onExit?: (code: number) => void + } = {} + let unsubData: (() => void) | null = null + let unsubExit: (() => void) | null = null + + return { + async connect(options) { + storedCallbacks = options.callbacks + + try { + const result = await window.api.pty.spawn({ + cols: options.cols ?? 80, + rows: options.rows ?? 24, + cwd + }) + ptyId = result.id + connected = true + + unsubData = window.api.pty.onData((payload) => { + if (payload.id === ptyId) { + storedCallbacks.onData?.(payload.data) + if (onTitleChange) { + const title = extractLastOscTitle(payload.data) + if (title !== null) onTitleChange(title) + } + } + }) + + unsubExit = window.api.pty.onExit((payload) => { + if (payload.id === ptyId) { + connected = false + storedCallbacks.onExit?.(payload.code) + storedCallbacks.onDisconnect?.() + onPtyExit?.() + } + }) + + storedCallbacks.onConnect?.() + storedCallbacks.onStatus?.('shell') + } catch (err) { + const msg = err instanceof Error ? err.message : String(err) + storedCallbacks.onError?.(msg) + } + }, + + disconnect() { + if (ptyId) { + window.api.pty.kill(ptyId) + connected = false + ptyId = null + unsubData?.() + unsubExit?.() + unsubData = null + unsubExit = null + storedCallbacks.onDisconnect?.() + } + }, + + sendInput(data: string): boolean { + if (!connected || !ptyId) return false + window.api.pty.write(ptyId, data) + return true + }, + + resize(cols: number, rows: number): boolean { + if (!connected || !ptyId) return false + window.api.pty.resize(ptyId, cols, rows) + return true + }, + + isConnected() { + return connected + }, + + destroy() { + this.disconnect() + } + } +} + +export default function Terminal(): React.JSX.Element { + const containerRef = useRef(null) + const resttyRef = useRef(null) + const activeWorktree = useAppStore((s) => s.activeWorktree) + + useEffect(() => { + const container = containerRef.current + if (!container) return + + const cwd = activeWorktree ?? undefined + + // Map pane id -> its associated pty transport exit handler + const paneCloseQueue: number[] = [] + let closeTimer: ReturnType | null = null + + function scheduleClose(paneId: number): void { + paneCloseQueue.push(paneId) + if (closeTimer) return + // Batch close on next tick to avoid issues during restty callbacks + closeTimer = setTimeout(() => { + closeTimer = null + const restty = resttyRef.current + if (!restty) return + while (paneCloseQueue.length > 0) { + const id = paneCloseQueue.shift()! + const panes = restty.getPanes() + if (panes.length <= 1) { + // Last pane — go to landing + useAppStore.getState().setShowTerminal(false) + return + } + restty.closePane(id) + } + }, 0) + } + + // Track per-pane titles + const paneTitles = new Map() + let currentActivePaneId: number | null = null + + function syncTitleToStore(): void { + if (currentActivePaneId !== null) { + const title = paneTitles.get(currentActivePaneId) ?? '' + useAppStore.getState().setTerminalTitle(title) + } else { + useAppStore.getState().setTerminalTitle('') + } + } + + const restty = new Restty({ + root: container, + createInitialPane: false, + autoInit: false, + shortcuts: { enabled: true }, + appOptions: ({ id }) => { + const onPtyExit = (): void => { + scheduleClose(id) + } + const onTitleChange = (title: string): void => { + paneTitles.set(id, title) + if (id === currentActivePaneId) { + useAppStore.getState().setTerminalTitle(title) + } + } + return { + renderer: 'webgpu', + fontSize: 14, + fontSizeMode: 'em', + alphaBlending: 'native', + ptyTransport: createIpcPtyTransport(cwd, onPtyExit, onTitleChange) as never, + fontSources: [ + { + type: 'local' as const, + label: 'SF Mono', + matchers: ['sf mono', 'sfmono-regular'], + required: true + }, + { + type: 'local' as const, + label: 'Menlo', + matchers: ['menlo', 'menlo regular'] + } + ] + } + }, + onPaneCreated: async (pane) => { + await pane.app.init() + const theme = getBuiltinTheme('Aizen Dark') + if (theme) pane.app.applyTheme(theme, 'Aizen Dark') + pane.app.updateSize(true) + pane.app.connectPty('') + pane.canvas.focus({ preventScroll: true }) + }, + onPaneClosed: (pane) => { + paneTitles.delete(pane.id) + }, + onActivePaneChange: (pane) => { + currentActivePaneId = pane?.id ?? null + syncTitleToStore() + } + }) + + restty.createInitialPane({ focus: true }) + resttyRef.current = restty + + // --- Pane zoom state --- + let zoomedPaneId: number | null = null + const savedStyles: { el: HTMLElement; prop: string; prev: string }[] = [] + + function saveAndSet(el: HTMLElement, prop: string, value: string): void { + savedStyles.push({ + el, + prop, + prev: (el.style as unknown as Record)[prop] ?? '' + }) + ;(el.style as unknown as Record)[prop] = value + } + + function unzoom(): void { + if (zoomedPaneId === null) return + for (const entry of savedStyles) { + ;(entry.el.style as unknown as Record)[entry.prop] = entry.prev + } + savedStyles.length = 0 + zoomedPaneId = null + requestAnimationFrame(() => { + for (const p of restty.getPanes()) { + p.app.updateSize(true) + } + }) + } + + function togglePaneZoom(): void { + const panes = restty.getPanes() + + if (zoomedPaneId !== null) { + unzoom() + return + } + + if (panes.length <= 1) return + + const active = restty.getActivePane() ?? panes[0] + if (!active) return + + let current: HTMLElement = active.container + saveAndSet(current, 'flex', '1 1 100%') + + while (current.parentElement) { + const parent = current.parentElement + for (const sibling of Array.from(parent.children) as HTMLElement[]) { + if (sibling === current) continue + saveAndSet(sibling, 'display', 'none') + } + if (parent === container) break + saveAndSet(parent, 'flex', '1 1 100%') + current = parent + } + + zoomedPaneId = active.id + requestAnimationFrame(() => { + active.app.updateSize(true) + }) + } + + function closeActivePane(): void { + const panes = restty.getPanes() + const active = restty.getActivePane() ?? panes[0] + if (!active) return + + // If zoomed and closing the zoomed pane, unzoom first + if (zoomedPaneId === active.id) { + unzoom() + } + + if (panes.length <= 1) { + // Last pane — disconnect PTY and go to landing + active.app.disconnectPty() + useAppStore.getState().setShowTerminal(false) + return + } + // Disconnect PTY then close the pane + active.app.disconnectPty() + restty.closePane(active.id) + } + + const onKeyDown = (e: KeyboardEvent): void => { + // Cmd+K: clear screen + if (e.metaKey && e.key === 'k' && !e.shiftKey && !e.repeat) { + e.preventDefault() + const pane = restty.getActivePane() ?? restty.getPanes()[0] + if (pane) { + pane.app.clearScreen() + } + return + } + + // Cmd+W: close active pane (not the window) + if (e.metaKey && e.key === 'w' && !e.shiftKey && !e.repeat) { + e.preventDefault() + closeActivePane() + return + } + + // Cmd+] / Cmd+[: cycle through panes + if (e.metaKey && !e.shiftKey && (e.key === ']' || e.key === '[') && !e.repeat) { + const panes = restty.getPanes() + if (panes.length > 1) { + e.preventDefault() + const active = restty.getActivePane() + const idx = active ? panes.findIndex((p) => p.id === active.id) : -1 + const dir = e.key === ']' ? 1 : -1 + const next = panes[(idx + dir + panes.length) % panes.length] + if (next) { + next.canvas.focus({ preventScroll: true }) + } + } + return + } + + // Cmd+Shift+Enter: toggle pane zoom + if (e.metaKey && e.shiftKey && e.key === 'Enter' && !e.repeat) { + e.preventDefault() + togglePaneZoom() + } + } + window.addEventListener('keydown', onKeyDown, { capture: true }) + + return () => { + window.removeEventListener('keydown', onKeyDown, { capture: true }) + if (closeTimer) clearTimeout(closeTimer) + restty.destroy() + resttyRef.current = null + } + }, [activeWorktree]) + + return
+} diff --git a/src/renderer/src/components/Versions.tsx b/src/renderer/src/components/Versions.tsx deleted file mode 100644 index 37a9ff082..000000000 --- a/src/renderer/src/components/Versions.tsx +++ /dev/null @@ -1,15 +0,0 @@ -import { useState } from 'react' - -function Versions(): React.JSX.Element { - const [versions] = useState(window.electron.process.versions) - - return ( -
    -
  • Electron v{versions.electron}
  • -
  • Chromium v{versions.chrome}
  • -
  • Node v{versions.node}
  • -
- ) -} - -export default Versions diff --git a/src/renderer/src/store.ts b/src/renderer/src/store.ts new file mode 100644 index 000000000..d2ea58d4b --- /dev/null +++ b/src/renderer/src/store.ts @@ -0,0 +1,47 @@ +import { create } from 'zustand' + +export interface Worktree { + path: string + head: string + branch: string + isBare: boolean +} + +export interface AppState { + sidebarOpen: boolean + toggleSidebar: () => void + + worktrees: Worktree[] + activeWorktree: string | null + setActiveWorktree: (path: string) => void + fetchWorktrees: () => Promise + + showTerminal: boolean + setShowTerminal: (show: boolean) => void + + terminalTitle: string + setTerminalTitle: (title: string) => void +} + +export const useAppStore = create((set) => ({ + sidebarOpen: true, + toggleSidebar: () => set((s) => ({ sidebarOpen: !s.sidebarOpen })), + + worktrees: [], + activeWorktree: null, + setActiveWorktree: (path) => set({ activeWorktree: path }), + fetchWorktrees: async () => { + try { + const worktrees = await window.api.worktrees.getCurrent() + set({ worktrees }) + } catch (err) { + console.error('Failed to fetch worktrees:', err) + } + }, + + showTerminal: true, + setShowTerminal: (show) => set({ showTerminal: show }), + + terminalTitle: '', + setTerminalTitle: (title) => set({ terminalTitle: title }) +}))