mirror of
https://github.com/multica-ai/multica.git
synced 2026-07-05 21:39:54 +02:00
* feat(desktop): brand dev build as Multica Canary with bundled icon pnpm dev:desktop ran under the stock Electron name and default icon, making it indistinguishable from any other Electron dev app in the dock. Set a Canary app name + userData path and point the macOS dock icon and BrowserWindow icon at the bundled resources/icon.png so the dev build is visually branded. * feat(desktop): allow overriding renderer port via DESKTOP_RENDERER_PORT Lets a second worktree run `pnpm dev:desktop` while a primary checkout already holds the default Vite dev port 5173 — required to actually exercise the "Multica Canary" branding in isolation. * feat(desktop): rebrand Electron.app Info.plist so dev shows Multica Canary app.setName() can't override the macOS menu bar title or Cmd+Tab label — those come from CFBundleName baked into the running bundle's Info.plist. Patch the bundled Electron.app's plist during `pnpm dev:desktop` so dev launches read "Multica Canary" everywhere, not "Electron". Idempotent; unlinks before rewriting so we don't mutate a pnpm-store inode shared with other projects.
60 lines
2.0 KiB
JSON
60 lines
2.0 KiB
JSON
{
|
|
"name": "@multica/desktop",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"main": "./out/main/index.js",
|
|
"scripts": {
|
|
"bundle-cli": "node scripts/bundle-cli.mjs",
|
|
"brand-dev-electron": "node scripts/brand-dev-electron.mjs",
|
|
"dev": "pnpm run bundle-cli && pnpm run brand-dev-electron && electron-vite dev",
|
|
"build": "pnpm run bundle-cli && electron-vite build",
|
|
"typecheck:node": "tsc --noEmit -p tsconfig.node.json --composite false",
|
|
"typecheck:web": "tsc --noEmit -p tsconfig.web.json --composite false",
|
|
"typecheck": "pnpm run typecheck:node && pnpm run typecheck:web",
|
|
"preview": "electron-vite preview",
|
|
"package": "node scripts/package.mjs",
|
|
"lint": "eslint .",
|
|
"test": "vitest run",
|
|
"postinstall": "electron-builder install-app-deps"
|
|
},
|
|
"dependencies": {
|
|
"@dnd-kit/core": "^6.3.1",
|
|
"@dnd-kit/modifiers": "^9.0.0",
|
|
"@dnd-kit/sortable": "^10.0.0",
|
|
"@dnd-kit/utilities": "^3.2.2",
|
|
"@electron-toolkit/preload": "^3.0.2",
|
|
"@electron-toolkit/utils": "^4.0.0",
|
|
"@fontsource-variable/inter": "^5.2.5",
|
|
"@fontsource/geist-mono": "^5.2.7",
|
|
"@multica/core": "workspace:*",
|
|
"@multica/ui": "workspace:*",
|
|
"@multica/views": "workspace:*",
|
|
"electron-updater": "^6.8.3",
|
|
"fix-path": "^5.0.0",
|
|
"react-router-dom": "^7.6.0",
|
|
"shadcn": "^4.1.0",
|
|
"sonner": "^2.0.7",
|
|
"tw-animate-css": "^1.4.0"
|
|
},
|
|
"devDependencies": {
|
|
"@electron-toolkit/tsconfig": "^2.0.0",
|
|
"@multica/tsconfig": "workspace:*",
|
|
"@tailwindcss/vite": "^4",
|
|
"@testing-library/jest-dom": "catalog:",
|
|
"@testing-library/react": "catalog:",
|
|
"@types/node": "catalog:",
|
|
"@types/react": "catalog:",
|
|
"@types/react-dom": "catalog:",
|
|
"@vitejs/plugin-react": "^5.1.1",
|
|
"electron": "^39.2.6",
|
|
"electron-builder": "^26.0.12",
|
|
"electron-vite": "^5.0.0",
|
|
"jsdom": "catalog:",
|
|
"react": "catalog:",
|
|
"react-dom": "catalog:",
|
|
"tailwindcss": "^4",
|
|
"typescript": "catalog:",
|
|
"vitest": "catalog:"
|
|
}
|
|
}
|