On Linux, `titleBarStyle: 'hidden'` removes the title bar entirely, leaving no window controls (close/minimize/maximize). macOS has traffic lights and Windows has a custom title bar component, but Linux gets nothing. Fix this by omitting the hidden title bar style on Linux, which gives native window decorations from the desktop environment (GNOME, KDE, Hyprland, etc.). Also adds Linux build support: - electron-builder `linux` config targeting pacman (.pkg.tar.zst) - `dist:linux` script for standalone Linux builds - `release-linux` CI job on ubuntu-latest - `dist` script updated to include --linux
174 lines
5.6 KiB
JSON
174 lines
5.6 KiB
JSON
{
|
|
"name": "claude-devtools",
|
|
"type": "module",
|
|
"version": "0.1.0",
|
|
"description": "Desktop app that visualizes Claude Code session execution — explore conversations, track context usage, and analyze tool calls",
|
|
"license": "MIT",
|
|
"author": "claude-devtools contributors",
|
|
"homepage": "https://github.com/matt1398/claude-devtools",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/matt1398/claude-devtools.git"
|
|
},
|
|
"bugs": {
|
|
"url": "https://github.com/matt1398/claude-devtools/issues"
|
|
},
|
|
"main": "dist-electron/main/index.cjs",
|
|
"scripts": {
|
|
"dev": "electron-vite dev",
|
|
"build": "electron-vite build",
|
|
"dist": "electron-builder --mac --win --linux",
|
|
"dist:mac": "electron-builder --mac --publish always",
|
|
"dist:win": "electron-builder --win --publish always",
|
|
"dist:linux": "electron-builder --linux --publish always",
|
|
"preview": "electron-vite preview",
|
|
"typecheck": "tsc --noEmit",
|
|
"lint": "eslint src/",
|
|
"lint:fix": "eslint src/ --fix",
|
|
"format": "prettier --write \"src/**/*.{ts,tsx,js,jsx,json,css}\"",
|
|
"format:check": "prettier --check \"src/**/*.{ts,tsx,js,jsx,json,css}\"",
|
|
"check": "pnpm typecheck && pnpm lint && pnpm test && pnpm build",
|
|
"fix": "pnpm lint:fix && pnpm format",
|
|
"quality": "pnpm check && pnpm format:check && npx knip",
|
|
"test:chunks": "tsx test/test-chunk-building.ts",
|
|
"test:semantic": "tsx test/test-semantic-steps.ts",
|
|
"test:noise": "tsx test/test-noise-filtering.ts",
|
|
"test:task-filtering": "tsx test/test-task-filtering.ts",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest",
|
|
"test:coverage": "vitest run --coverage",
|
|
"test:coverage:critical": "vitest run --coverage --config vitest.critical.config.ts",
|
|
"remotion:preview": "remotion studio remotion/index.ts",
|
|
"remotion:render": "remotion render remotion/index.ts DemoVideo out/demo.mp4",
|
|
"remotion:render:gif": "remotion render remotion/index.ts DemoVideo out/demo.gif --image-format png"
|
|
},
|
|
"dependencies": {
|
|
"@dnd-kit/core": "^6.3.1",
|
|
"@dnd-kit/sortable": "^10.0.0",
|
|
"@dnd-kit/utilities": "^3.2.2",
|
|
"@fastify/cors": "^11.2.0",
|
|
"@fastify/static": "^9.0.0",
|
|
"@remotion/light-leaks": "4.0.421",
|
|
"@tanstack/react-virtual": "^3.10.8",
|
|
"date-fns": "^3.6.0",
|
|
"electron-updater": "^6.7.3",
|
|
"fastify": "^5.7.4",
|
|
"idb-keyval": "^6.2.2",
|
|
"lucide-react": "^0.562.0",
|
|
"mdast-util-to-hast": "^13.2.1",
|
|
"react": "^18.3.1",
|
|
"react-dom": "^18.3.1",
|
|
"react-markdown": "^10.1.0",
|
|
"remark-gfm": "^4.0.1",
|
|
"remark-parse": "^11.0.0",
|
|
"ssh-config": "^5.0.4",
|
|
"ssh2": "^1.17.0",
|
|
"unified": "^11.0.5",
|
|
"zustand": "^4.5.0"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint-community/eslint-plugin-eslint-comments": "^4.6.0",
|
|
"@eslint/js": "^9.39.2",
|
|
"@remotion/cli": "^4.0.421",
|
|
"@remotion/google-fonts": "^4.0.421",
|
|
"@remotion/media": "^4.0.421",
|
|
"@remotion/transitions": "^4.0.421",
|
|
"@tailwindcss/typography": "^0.5.19",
|
|
"@types/hast": "^3.0.4",
|
|
"@types/mdast": "^4.0.4",
|
|
"@types/node": "^25.0.7",
|
|
"@types/react": "^18.3.3",
|
|
"@types/react-dom": "^18.3.0",
|
|
"@types/ssh2": "^1.15.5",
|
|
"@vitejs/plugin-react": "^4.3.1",
|
|
"@vitest/coverage-v8": "^3.1.4",
|
|
"autoprefixer": "^10.4.17",
|
|
"electron": "^40.3.0",
|
|
"electron-builder": "^25.1.8",
|
|
"electron-vite": "^2.3.0",
|
|
"eslint": "^9.39.2",
|
|
"eslint-config-prettier": "^10.1.8",
|
|
"eslint-import-resolver-typescript": "^4.4.4",
|
|
"eslint-plugin-boundaries": "^5.3.1",
|
|
"eslint-plugin-import": "^2.32.0",
|
|
"eslint-plugin-jsx-a11y": "^6.10.2",
|
|
"eslint-plugin-react": "^7.37.5",
|
|
"eslint-plugin-react-hooks": "^7.0.1",
|
|
"eslint-plugin-react-refresh": "^0.4.26",
|
|
"eslint-plugin-security": "^3.0.1",
|
|
"eslint-plugin-simple-import-sort": "^12.1.1",
|
|
"eslint-plugin-sonarjs": "^3.0.6",
|
|
"eslint-plugin-tailwindcss": "^3.18.2",
|
|
"globals": "^17.2.0",
|
|
"happy-dom": "^17.4.6",
|
|
"knip": "^5.82.1",
|
|
"postcss": "^8.4.35",
|
|
"prettier": "^3.8.1",
|
|
"prettier-plugin-tailwindcss": "^0.7.2",
|
|
"remotion": "^4.0.421",
|
|
"tailwindcss": "^3.4.1",
|
|
"tsx": "^4.21.0",
|
|
"typescript": "^5.9.3",
|
|
"typescript-eslint": "^8.54.0",
|
|
"vite": "^5.4.2",
|
|
"vitest": "^3.1.4"
|
|
},
|
|
"build": {
|
|
"appId": "com.claudecode.context",
|
|
"productName": "claude-devtools",
|
|
"directories": {
|
|
"output": "release"
|
|
},
|
|
"files": [
|
|
"out/renderer/**",
|
|
"dist-electron/**",
|
|
"package.json"
|
|
],
|
|
"asar": true,
|
|
"npmRebuild": false,
|
|
"extraMetadata": {
|
|
"main": "dist-electron/main/index.cjs"
|
|
},
|
|
"mac": {
|
|
"category": "public.app-category.developer-tools",
|
|
"target": [
|
|
"dmg",
|
|
"zip"
|
|
],
|
|
"hardenedRuntime": true,
|
|
"gatekeeperAssess": false,
|
|
"notarize": true,
|
|
"entitlements": "resources/entitlements.mac.plist",
|
|
"entitlementsInherit": "resources/entitlements.mac.inherit.plist",
|
|
"icon": "resources/icons/mac/icon.icns"
|
|
},
|
|
"dmg": {
|
|
"sign": false
|
|
},
|
|
"win": {
|
|
"target": [
|
|
"nsis"
|
|
],
|
|
"icon": "resources/icons/win/icon.ico"
|
|
},
|
|
"linux": {
|
|
"target": [
|
|
"pacman"
|
|
],
|
|
"icon": "resources/icons/png",
|
|
"category": "Development"
|
|
},
|
|
"nsis": {
|
|
"oneClick": false,
|
|
"perMachine": false,
|
|
"allowToChangeInstallationDirectory": true
|
|
},
|
|
"publish": [
|
|
{
|
|
"provider": "github",
|
|
"releaseType": "draft"
|
|
}
|
|
]
|
|
},
|
|
"packageManager": "pnpm@10.25.0+sha512.5e82639027af37cf832061bcc6d639c219634488e0f2baebe785028a793de7b525ffcd3f7ff574f5e9860654e098fe852ba8ac5dd5cefe1767d23a020a92f501"
|
|
}
|