Install & Compatibility
Where this runs
No compatibility data collected yet for this library.
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
GrpcWrapper
✓ import { GrpcWrapper } from 'grpc-simple-wrapper'
✗ const GrpcWrapper = require('grpc-simple-wrapper')
Package is ESM-only; using require will throw an error. Ensure "type": "module" in package.json.
createServer
✓ import { createServer } from 'grpc-simple-wrapper'
✗ import { createServer } from 'grpc-simple-wrapper'
Common mistake: trying to import GrpcWrapper.createServer as a static method; it's a named export.
createClient
✓ import { createClient } from 'grpc-simple-wrapper'
✗ const client = require('grpc-simple-wrapper').createClient
Named export, not default; require destructuring is necessary for CJS but package is ESM-only.
Shows how to initialize a gRPC server and client using grpc-simple-wrapper, including proto loading and insecure credentials.
import { createServer, createClient } from 'grpc-simple-wrapper';
import * as protoLoader from '@grpc/proto-loader';
import * as grpc from '@grpc/grpc-js';
// Load proto file
const packageDefinition = protoLoader.loadSync('helloworld.proto', {
keepCase: true,
longs: String,
enums: String,
defaults: true,
oneofs: true
});
const helloProto = grpc.loadPackageDefinition(packageDefinition).helloworld;
// Create server
const server = createServer({
proto: helloProto.Greeter.service,
implementations: {
sayHello: (call, callback) => {
callback(null, { message: 'Hello ' + call.request.name });
}
}
});
server.bindAsync('0.0.0.0:50051', grpc.ServerCredentials.createInsecure(), () => {
server.start();
console.log('Server running on port 50051');
});
// Create client
const client = createClient({
proto: helloProto.Greeter,
address: 'localhost:50051',
credentials: grpc.credentials.createInsecure()
});
client.sayHello({ name: 'World' }, (error, response) => {
if (error) console.error(error);
else console.log('Greeting:', response.message);
});
Errors
Common errors & fixes
Error: Cannot find module 'grpc-simple-wrapper'
Package not installed or import path incorrect
fixRun 'npm install grpc-simple-wrapper' and ensure import path is correct (no typos).
TypeError: createServer is not a function
Import destructuring mismatch or using CJS require
fixUse ESM import: 'import { createServer } from 'grpc-simple-wrapper'' Error: @grpc/proto-loader is required to load proto files
Missing peer dependency @grpc/proto-loader
fixInstall it: 'npm install @grpc/proto-loader'
Audit
Dependencies
@grpc/grpc-jsrequiredCore gRPC runtime for Node.js
@grpc/proto-loaderrequiredLoads .proto files to generate service descriptors