* feat(terminal): replace xterm with ghostty-web Replace xterm.js terminal with ghostty-web implementation Add terminal serialization support for state restoration Apply custom patches to ghostty-web for enhancements * feat(terminal): add bun-pty backend support Switch terminal to ghostty-web with bun-pty backend for better performance Auto-detect and prefer Bun runtime when available for terminal sessions Update terminal viewport write queue handling for improved reliability * fix(terminal): prevent unnecessary resize events Only report terminal resize when dimensions actually change Simplify chunk processing state tracking Disable terminal transparency for consistent rendering * feat(terminal): increase scrollback and buffer limits Increase terminal scrollback buffer from 10k to 50k lines Increase terminal buffer limit from 256k to 1M bytes Add rate limiting and improve output handling for terminal streams
93 lines
2.6 KiB
JSON
93 lines
2.6 KiB
JSON
{
|
|
"name": "@openchamber/web",
|
|
"version": "1.4.0",
|
|
"private": false,
|
|
"type": "module",
|
|
"main": "./server/index.js",
|
|
"types": "./server/index.d.ts",
|
|
"bin": {
|
|
"openchamber": "./bin/cli.js"
|
|
},
|
|
"publishConfig": {
|
|
"access": "public"
|
|
},
|
|
"scripts": {
|
|
"dev": "bun run build:watch",
|
|
"dev:server": "node server/index.js --port 3001",
|
|
"dev:server:watch": "nodemon --watch server --ext js --exec \"node server/index.js --port 3001\"",
|
|
"build": "vite build",
|
|
"build:watch": "vite build --watch",
|
|
"type-check": "tsc --noEmit",
|
|
"lint": "eslint \"./src/**/*.{ts,tsx}\" --config ../../eslint.config.js",
|
|
"start": "node bin/cli.js serve"
|
|
},
|
|
"dependencies": {
|
|
"@fontsource/ibm-plex-mono": "^5.2.7",
|
|
"@fontsource/ibm-plex-sans": "^5.1.1",
|
|
"@ibm/plex": "^6.4.1",
|
|
"@opencode-ai/sdk": "^1.0.209",
|
|
"@radix-ui/react-collapsible": "^1.1.12",
|
|
"@radix-ui/react-dialog": "^1.1.15",
|
|
"@radix-ui/react-dropdown-menu": "^2.1.16",
|
|
"@radix-ui/react-scroll-area": "^1.2.10",
|
|
"@radix-ui/react-select": "^2.2.6",
|
|
"@radix-ui/react-separator": "^1.1.7",
|
|
"@radix-ui/react-slot": "^1.2.3",
|
|
"@radix-ui/react-toggle": "^1.1.10",
|
|
"@radix-ui/react-tooltip": "^1.2.8",
|
|
"@remixicon/react": "^4.7.0",
|
|
"@types/react-syntax-highlighter": "^15.5.13",
|
|
"ghostty-web": "0.3.0",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"cmdk": "^1.1.1",
|
|
"express": "^5.1.0",
|
|
"http-proxy-middleware": "^3.0.5",
|
|
"next-themes": "^0.4.6",
|
|
"bun-pty": "^0.4.5",
|
|
"node-pty": "^1.1.0",
|
|
"react": "^19.1.1",
|
|
"react-dom": "^19.1.1",
|
|
"react-markdown": "^10.1.0",
|
|
"react-syntax-highlighter": "^15.6.6",
|
|
"remark-gfm": "^4.0.1",
|
|
"simple-git": "^3.28.0",
|
|
"sonner": "^2.0.7",
|
|
"strip-json-comments": "^5.0.3",
|
|
"tailwind-merge": "^3.3.1",
|
|
"yaml": "^2.8.1",
|
|
"zustand": "^5.0.8"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint/js": "^9.33.0",
|
|
"@tailwindcss/postcss": "^4.0.0",
|
|
"@types/node": "^24.3.1",
|
|
"@types/react": "^19.1.10",
|
|
"@types/react-dom": "^19.1.7",
|
|
"@vitejs/plugin-react": "^5.0.0",
|
|
"autoprefixer": "^10.4.21",
|
|
"concurrently": "^9.2.1",
|
|
"cors": "^2.8.5",
|
|
"cross-env": "^7.0.3",
|
|
"eslint": "^9.33.0",
|
|
"eslint-plugin-react-hooks": "^5.2.0",
|
|
"eslint-plugin-react-refresh": "^0.4.20",
|
|
"globals": "^16.3.0",
|
|
"nodemon": "^3.1.7",
|
|
"tailwindcss": "^4.0.0",
|
|
"tsx": "^4.20.6",
|
|
"tw-animate-css": "^1.3.8",
|
|
"typescript": "~5.8.3",
|
|
"typescript-eslint": "^8.39.1",
|
|
"vite": "^7.1.2"
|
|
},
|
|
"files": [
|
|
"dist",
|
|
"server",
|
|
"bin",
|
|
"public",
|
|
"package.json",
|
|
"README.md"
|
|
]
|
|
}
|