{"id":48179,"library":"infinimesh-proto","title":"infinimesh-proto","description":"Generated gRPC and Connect API code for infinimesh IoT platform. Version 3.1.5-9 provides TypeScript/JavaScript stubs via Connect-ES (ESM/CJS) and Go generated code. Released as needed with protobuf updates. Key differentiator: pre-generated code for Node and Go, avoiding manual protoc setup. Supports both gRPC and Connect protocol.","status":"active","version":"3.1.5-9","language":"javascript","source_language":"en","source_url":"https://github.com/infinimesh/proto","tags":["javascript","grpc","buf","protobuf","infinimesh","iot","connectrpc"],"install":[{"cmd":"npm install infinimesh-proto","lang":"bash","label":"npm"},{"cmd":"yarn add infinimesh-proto","lang":"bash","label":"yarn"},{"cmd":"pnpm add infinimesh-proto","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Runtime dependency for Connect-ES generated code","package":"@bufbuild/protobuf","optional":false},{"reason":"Required for Connect-ES transport","package":"@bufbuild/connect","optional":true},{"reason":"Required for browser usage","package":"@bufbuild/connect-web","optional":true}],"imports":[{"note":"Named export from Connect-ES generated files; default import will fail.","wrong":"import ServiceClient from '@infinimesh/proto/infinimesh/device/v1/device_connect'","symbol":"ServiceClient","correct":"import { ServiceClient } from '@infinimesh/proto/infinimesh/device/v1/device_connect'"},{"note":"ESM-only package; CJS require not supported. Use import syntax.","wrong":"const { DeviceService } = require('@infinimesh/proto/infinimesh/device/v1/device_pb')","symbol":"DeviceService","correct":"import { DeviceService } from '@infinimesh/proto/infinimesh/device/v1/device_pb'"},{"note":"createPromiseClient is from @bufbuild/connect, not from the proto package.","wrong":"import { createPromiseClient } from '@infinimesh/proto'","symbol":"createPromiseClient","correct":"import { createPromiseClient } from '@bufbuild/connect'"},{"note":"Used for server-side testing; exported from @bufbuild/connect.","wrong":null,"symbol":"createRouterTransport","correct":"import { createRouterTransport } from '@bufbuild/connect'"}],"quickstart":{"code":"import { createPromiseClient } from '@bufbuild/connect';\nimport { createConnectTransport } from '@bufbuild/connect-web';\nimport { DeviceService } from '@infinimesh/proto/infinimesh/device/v1/device_pb';\n\nconst transport = createConnectTransport({\n  baseUrl: process.env.INFINIMESH_API_URL ?? 'https://api.infinimesh.cloud',\n});\n\nasync function main() {\n  const client = createPromiseClient(DeviceService, transport);\n  const res = await client.getDevice({ id: 'my-device' });\n  console.log(res);\n}\nmain();","lang":"typescript","description":"Creates a Connect-ES client for the DeviceService, demonstrating import paths and transport setup."},"warnings":[{"fix":"Update imports to use @infinimesh/proto/infinimesh/... instead of direct references to subdirectories.","message":"Version 3.x changed import paths from deep nested to scoped @infinimesh/proto.","severity":"breaking","affected_versions":">=3.0.0"},{"fix":"Use import syntax or set type:\"module\" in package.json.","message":"The package is ESM-only; CJS require() results in error.","severity":"gotcha","affected_versions":">=3.0.0"},{"fix":"Install @bufbuild/connect and @bufbuild/connect-web as peer dependencies.","message":"createPromiseClient and transport utilities are from @bufbuild/connect, not from this package.","severity":"gotcha","affected_versions":"*"},{"fix":"Migrate to Connect-ES (v3) for future support.","message":"Older v2.x used gRPC-Web stubs; v3 switched to Connect-ES.","severity":"deprecated","affected_versions":">=2.0.0 <3.0.0"},{"fix":"Regenerate using Buf with connect-es plugin.","message":"v3.1.0 removed grpc-web stubs; only Connect-ES stubs remain.","severity":"breaking","affected_versions":">=3.1.0"},{"fix":"Ensure @bufbuild/protobuf is installed (>=1.0.0).","message":"The package requires protobuf runtime packages; missing them causes runtime errors.","severity":"gotcha","affected_versions":"*"},{"fix":"Use named import syntax.","message":"Use of default exports is deprecated; all symbols are named exports.","severity":"deprecated","affected_versions":">=3.0.0"}],"env_vars":null,"search_vec":"'-9':16 '3.1.5':15 'api':8 'avoid':45 'buf':57 'code':9,28,40 'connect':7,22,53 'connect-':21 'connectrpc':61 'differenti':36 'es':23 'esm/cjs':24 'generat':4,27,39 'go':26,44 'grpc':5,51,56 'infinimesh':2,11,59 'infinimesh-proto':1 'iot':12,60 'javascript':55 'key':35 'manual':46 'need':31 'node':42 'platform':13 'pre':38 'pre-gener':37 'proto':3 'protobuf':33,58 'protoc':47 'protocol':54 'provid':17 'releas':29 'setup':48 'stub':19 'support':49 'typescript/javascript':18 'updat':34 'version':14 'via':20","created_at":"2026-06-07T16:55:18.603900+00:00","updated_at":"2026-06-07T16:55:18.603900+00:00","problems":[{"fix":"Add \"type\": \"module\" to package.json or use import syntax.","cause":"Using CommonJS require instead of import.","error":"Error [ERR_REQUIRE_ESM]: require() of ES Module /path/node_modules/@infinimesh/proto/... from /path/app.js not supported."},{"fix":"Ensure package is installed: npm install @infinimesh/proto. Verify import path matches the generated files.","cause":"Missing or incorrect package install; or not using the correct subpath import.","error":"Module not found: Can't resolve '@infinimesh/proto/infinimesh/device/v1/device_connect'"},{"fix":"Import createPromiseClient from '@bufbuild/connect'.","cause":"Importing createPromiseClient from the wrong package (e.g., @infinimesh/proto itself).","error":"TypeError: (0 , createPromiseClient) is not a function"},{"fix":"Install @bufbuild/protobuf: npm install @bufbuild/protobuf.","cause":"Missing required runtime dependency.","error":"Error: Cannot find module '@bufbuild/protobuf'"},{"fix":"Use createPromiseClient to instantiate a client: const client = createPromiseClient(DeviceService, transport); then call client.getDevice().","cause":"Using the service object directly instead of creating a client.","error":"Uncaught TypeError: DeviceService.getDevice is not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/infinimesh/proto#readme","github":"https://github.com/infinimesh/proto","docs":null,"changelog":null,"pypi":null,"npm":"infinimesh-proto","openapi_spec":null,"status_page":null,"smithery":null,"categories":["iot"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}