Initial commit: Electron + React touchscreen kiosk dashboard for Home Assistant

This commit is contained in:
root
2026-02-25 23:01:20 -06:00
commit 97a7912eae
84 changed files with 12059 additions and 0 deletions

72
package.json Executable file
View File

@@ -0,0 +1,72 @@
{
"name": "imperial-command-center",
"version": "1.0.0",
"description": "Full-screen touchscreen kiosk dashboard for Home Assistant with Star Wars Imperial theme",
"main": "dist-electron/main.js",
"author": "Homelab",
"license": "MIT",
"scripts": {
"dev": "vite",
"build": "tsc && vite build && tsc -p tsconfig.electron.json",
"build:web": "./node_modules/.bin/tsc && ./node_modules/.bin/vite build",
"preview": "vite preview",
"electron:dev": "concurrently \"vite\" \"wait-on http://localhost:5173 && electron .\"",
"electron:build": "npm run build && electron-builder",
"build:linux": "npm run build && electron-builder --linux AppImage",
"build:win": "npm run build && electron-builder --win nsis",
"lint": "eslint src --ext ts,tsx",
"typecheck": "tsc --noEmit"
},
"dependencies": {
"home-assistant-js-websocket": "^9.4.0",
"zustand": "^4.5.0",
"googleapis": "^131.0.0",
"@tensorflow/tfjs": "^4.17.0",
"@tensorflow-models/coco-ssd": "^2.2.3",
"electron-store": "^8.1.0",
"date-fns": "^3.3.1"
},
"devDependencies": {
"@types/node": "^20.11.0",
"@types/react": "^18.2.48",
"@types/react-dom": "^18.2.18",
"@vitejs/plugin-react": "^4.2.1",
"autoprefixer": "^10.4.17",
"concurrently": "^8.2.2",
"electron": "^28.2.0",
"electron-builder": "^24.9.1",
"eslint": "^8.56.0",
"@typescript-eslint/eslint-plugin": "^6.19.0",
"@typescript-eslint/parser": "^6.19.0",
"eslint-plugin-react-hooks": "^4.6.0",
"postcss": "^8.4.33",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"tailwindcss": "^3.4.1",
"typescript": "^5.3.3",
"vite": "^5.0.12",
"wait-on": "^7.2.0"
},
"build": {
"appId": "com.homelab.imperial-command-center",
"productName": "Imperial Command Center",
"directories": {
"output": "release"
},
"files": [
"dist/**/*",
"dist-electron/**/*"
],
"linux": {
"target": "AppImage",
"category": "Utility"
},
"win": {
"target": "nsis"
},
"nsis": {
"oneClick": true,
"perMachine": true
}
}
}