Adds a built-in terminal dock that runs a real pseudo-terminal per repository tab. - Backend: new src-tauri/src/terminal.rs implements TerminalState and Tauri commands terminal_open, terminal_write, terminal_resize and terminal_close using the portable-pty crate. Terminal output is emitted via "terminal:data" and exits via "terminal:exit". Includes unit tests for UTF-8 chunk handling. Cargo.toml updated to depend on portable-pty and main.rs registers the state/commands. - Frontend: App.svelte/UI and app.css updated to show a resizable terminal dock, toggleable with Ctrl+` and persisted open/height state. TerminalPanel.svelte is lazy-loaded per repo tab (frontend provides session ids like repo:<path>). package.json adds @xterm/xterm and @xterm/addon-fit for the frontend terminal surface. - Docs: CHANGELOG.md notes the new embedded terminal feature. Behavior: each repository tab has its own PTY-backed shell started in the repo cwd; the user's shell (SHELL/COMSPEC) is used so prompts, aliases and interactive behavior work as in a normal terminal.
39 lines
1.1 KiB
JSON
39 lines
1.1 KiB
JSON
{
|
|
"name": "gitty",
|
|
"version": "2026.9.8",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite --host 127.0.0.1",
|
|
"build": "vite build",
|
|
"prepare:lfs": "node scripts/prepare-git-lfs-sidecar.mjs",
|
|
"icons": "node scripts/generate-app-icons.mjs",
|
|
"preview": "vite preview --host 127.0.0.1",
|
|
"tauri": "tauri",
|
|
"tauri:dev": "node scripts/tauri-dev.mjs",
|
|
"tauri:build": "tauri build",
|
|
"check": "svelte-check --tsconfig ./tsconfig.json"
|
|
},
|
|
"dependencies": {
|
|
"@lucide/svelte": "^1.21.0",
|
|
"@tailwindcss/vite": "^4.3.1",
|
|
"@tauri-apps/api": "^2.5.0",
|
|
"@tauri-apps/plugin-dialog": "^2.7.1",
|
|
"@tauri-apps/plugin-updater": "^2.10.1",
|
|
"@xterm/addon-fit": "^0.11.0",
|
|
"@xterm/xterm": "^6.0.0",
|
|
"dompurify": "^3.4.15",
|
|
"marked": "^18.0.12",
|
|
"simple-icons": "^16.24.1",
|
|
"svelte": "^5.0.0",
|
|
"tailwindcss": "^4.3.1"
|
|
},
|
|
"devDependencies": {
|
|
"@sveltejs/vite-plugin-svelte": "^5.0.0",
|
|
"@tauri-apps/cli": "^2.5.0",
|
|
"svelte-check": "^4.0.0",
|
|
"typescript": "^5.6.0",
|
|
"vite": "^6.0.0"
|
|
}
|
|
}
|