{ "name": "farmcontrol-server", "version": "1.0.0", "description": "Connects to moonraker and also manages the socket connection to the printer.", "main": "build/index.js", "bin": "build/index.js", "type": "module", "scripts": { "start": "node build/index.js", "dev": "cross-env NODE_ENV=development nodemon src/index.js", "dev:electron": "concurrently \"cross-env NODE_ENV=development vite src/electron --port 5287 --no-open\" \"cross-env NODE_ENV=development electron src/index.js\"", "build": "pnpm clean && pnpm build:server && pnpm build:renderer", "build:server": "shx mkdir -p build && shx cp -r src/. build/ && shx cp package.json config.json build/", "build:renderer": "pnpm build:electron-renderer && shx cp src/electron/preload.js build/electron/ && shx rm -rf build/electron/App.jsx build/electron/main.jsx build/electron/App.css build/electron/index.css build/electron/FarmControlLogo.jsx build/electron/vite.config.js build/electron/public build/electron/build", "build:electron-renderer": "vite build src/electron --outDir build/electron", "build:electron": "pnpm build && electron-builder", "build:linux": "bun run clean && bun run build:server && shx mkdir -p app_dist/linux && pkg . --targets node18-linux-x64 --output app_dist/linux/farmcontrol-server && fpm -f -s dir -t deb -n farmcontrol-server -p app_dist/linux/ -v $(node -p \"require('./package.json').version\") --after-install packaging/linux/after-install.sh --after-remove packaging/linux/after-remove.sh app_dist/linux/farmcontrol-server=/usr/bin/farmcontrol-server packaging/linux/farmcontrol-server.service=/lib/systemd/system/farmcontrol-server.service && fpm -f -s dir -t rpm -n farmcontrol-server -p app_dist/linux/ -v $(node -p \"require('./package.json').version\") --after-install packaging/linux/after-install.sh --after-remove packaging/linux/after-remove.sh app_dist/linux/farmcontrol-server=/usr/bin/farmcontrol-server packaging/linux/farmcontrol-server.service=/lib/systemd/system/farmcontrol-server.service", "clean": "rimraf build" }, "author": "Tom Butcher", "license": "ISC", "dependencies": { "axios": "^1.13.2", "canvas": "^3.2.0", "etcd3": "^1.1.2", "express": "^5.1.0", "ipp": "^2.0.1", "jsonwebtoken": "^9.0.2", "keycloak-connect": "^26.1.1", "lodash": "^4.17.21", "log4js": "^6.9.1", "mongoose": "^9.0.0", "node-cache": "^5.1.2", "node-thermal-printer": "^4.5.0", "pdf-to-img": "^5.0.0", "sharp": "^0.34.5", "socket.io": "^4.8.1", "socket.io-client": "^4.8.1", "ws": "^8.18.3" }, "devDependencies": { "@ant-design/icons": "^6.1.0", "antd": "^5.28.0", "@electron/rebuild": "^4.0.1", "@vitejs/plugin-react": "^5.1.1", "concurrently": "^9.2.1", "cross-env": "^10.1.0", "electron": "^38.7.1", "electron-builder": "^26.0.12", "jest": "^30.2.0", "nodemon": "^3.1.11", "pkg": "^5.8.1", "prop-types": "^15.8.1", "react": "^19.2.0", "react-dom": "^19.2.0", "rimraf": "^6.1.2", "shx": "^0.3.4", "supertest": "^7.1.4", "vite": "^7.2.4", "vite-plugin-svgo": "^2.0.0", "vite-plugin-svgr": "^4.5.0" }, "pkg": { "assets": [ "config.json" ], "targets": [ "node18-linux-x64" ], "outputPath": "app_dist/linux" }, "build": { "appId": "com.tombutcher.farmcontrolserver", "productName": "Farm Control Server", "executableName": "farmcontrol-server", "icon": "assets/farmcontrolhosticon.png", "directories": { "output": "app_dist" }, "files": [ "build/**/*", "node_modules/**/*" ], "mac": { "target": "dmg" }, "win": { "target": "nsis" } } }