{ "name": "netbird-ui-electron", "version": "0.1.0", "description": "Modern Electron-based UI for NetBird VPN", "main": "dist/electron/main.js", "author": "NetBird Team ", "homepage": "https://netbird.io", "scripts": { "dev": "concurrently -k \"npm run dev:react\" \"npm run dev:electron\"", "dev:react": "vite --port 5173", "dev:electron": "tsc -p tsconfig.electron.json && electron .", "build": "vite build && tsc -p tsconfig.electron.json --noCheck && mkdir -p dist/proto && cp -r proto/* dist/proto/", "build:strict": "tsc && vite build && tsc -p tsconfig.electron.json", "build:linux": "npm run build && electron-builder --linux", "build:all": "npm run build && electron-builder -mwl", "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0", "preview": "vite preview" }, "dependencies": { "@grpc/grpc-js": "^1.9.14", "@grpc/proto-loader": "^0.7.10", "framer-motion": "^11.0.3", "lottie-react": "^2.4.1", "lucide-react": "^0.309.0", "react": "^18.2.0", "react-dom": "^18.2.0", "react-router-dom": "^7.9.5", "zustand": "^4.4.7" }, "devDependencies": { "@types/node": "^20.10.7", "@types/react": "^18.2.47", "@types/react-dom": "^18.2.18", "@typescript-eslint/eslint-plugin": "^6.17.0", "@typescript-eslint/parser": "^6.17.0", "@vitejs/plugin-react": "^4.2.1", "autoprefixer": "^10.4.16", "concurrently": "^8.2.2", "electron": "^28.1.3", "electron-builder": "^24.9.1", "eslint": "^8.56.0", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-react-refresh": "^0.4.5", "postcss": "^8.4.33", "tailwindcss": "^3.4.1", "typescript": "^5.3.3", "vite": "^5.0.11", "vite-plugin-electron": "^0.28.2" }, "build": { "appId": "io.netbird.desktop", "productName": "NetBird", "directories": { "output": "release" }, "files": [ "dist/**/*", "assets/**/*" ], "asarUnpack": [ "dist/proto/**/*", "assets/**/*" ], "linux": { "target": [ "AppImage", "deb" ], "category": "Network", "icon": "assets/icons" }, "mac": { "target": "dmg", "icon": "assets/icon.icns" }, "win": { "target": "nsis", "icon": "assets/icon.ico" } } }