@webarray/esphome-native-api
Version:
TypeScript/Node.js client for ESPHome native API with encryption and deep sleep support
89 lines (88 loc) • 2.43 kB
JSON
{
"name": "@webarray/esphome-native-api",
"version": "1.0.4",
"description": "TypeScript/Node.js client for ESPHome native API with encryption and deep sleep support",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"engines": {
"node": ">=18.0.0"
},
"scripts": {
"build": "tsc && npm run copy-proto",
"copy-proto": "cp src/proto/api.js dist/proto/ && cp src/proto/api.d.ts dist/proto/",
"proto:generate": "node scripts/generate-proto.js && node scripts/generate-entity-types.js",
"generate:entity-types": "node scripts/generate-entity-types.js",
"test": "jest",
"test:watch": "jest --watch",
"test:coverage": "jest --coverage",
"lint": "eslint src --ext .ts",
"lint:fix": "eslint src --ext .ts --fix",
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
"prepublishOnly": "npm run build"
},
"keywords": [
"esphome",
"home-automation",
"iot",
"api",
"protobuf",
"smart-home",
"esp32",
"esp8266",
"home-assistant",
"native-api",
"mdns",
"device-discovery",
"encryption",
"noise-protocol",
"deep-sleep",
"typescript"
],
"author": "Lex Ruesink",
"license": "MIT",
"dependencies": {
"@richardhopton/noise-c.wasm": "^0.5.0",
"bonjour-service": "^1.3.0",
"debug": "^4.4.3",
"eventemitter3": "^5.0.1",
"p-retry": "^7.1.0",
"protobufjs": "^7.5.4",
"varint": "^6.0.0"
},
"devDependencies": {
"@types/debug": "^4.1.12",
"@types/jest": "^30.0.0",
"@types/node": "^24.7.1",
"@types/varint": "^6.0.3",
"@typescript-eslint/eslint-plugin": "^8.46.0",
"@typescript-eslint/parser": "^8.46.0",
"eslint": "^9.37.0",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-prettier": "^5.5.4",
"jest": "^30.2.0",
"prettier": "^3.6.2",
"protobufjs-cli": "^1.1.3",
"ts-jest": "^29.4.4",
"ts-node": "^10.9.2",
"typescript": "^5.9.3"
},
"files": [
"dist/**/*",
"examples/**/*.js",
"examples/README.md",
"README.md",
"LICENSE",
"DEEP_SLEEP.md"
],
"repository": {
"type": "git",
"url": "https://github.com/LRuesink-WebArray/esphome-native-api.git"
},
"bugs": {
"url": "https://github.com/LRuesink-WebArray/esphome-native-api/issues"
},
"homepage": "https://github.com/LRuesink-WebArray/esphome-native-api#readme",
"publishConfig": {
"access": "public"
}
}