grpc-server-js
    TypeScript icon, indicating that this package has built-in type declarations

    0.5.0 • Public • Published

    grpc-server-js

    Current Version grpc-server-js CI Dependencies belly-button-style

    Pure JavaScript gRPC Server

    Documentation

    The goal is to be largely compatible with the existing Server implementation.

    Features

    • Unary calls.
    • Streaming client request calls.
    • Streaming server response calls.
    • Bidirectional streaming calls.
    • Deadline and cancellation support.
    • Support for gzip and deflate compression, as well as uncompressed messages.
    • Server credentials for handling both secure and insecure calls.
    • gRPC Metadata.
    • gRPC logging.
    • No production dependencies.
    • No C++ dependencies. This implementation relies on Node's http2 module.
    • Supports the following gRPC server options:
      • grpc.http2.max_frame_size
      • grpc.keepalive_time_ms
      • grpc.keepalive_timeout_ms
      • grpc.max_concurrent_streams
      • grpc.max_receive_message_length
      • grpc.max_send_message_length
      • All possible options and their descriptions are available here.
    • Supports the following gRPC environment variables:
      • GRPC_DEFAULT_SSL_ROOTS_FILE_PATH
      • GRPC_SSL_CIPHER_SUITES
      • GRPC_VERBOSITY
      • All possible environment variables and their descriptions are available here.

    Public API Deviations from the Existing grpc.Server

    • Server.prototype.bind() is an async function.
    • The deprecated Server.prototype.addProtoService() is not implemented.
    • Server.prototype.addHttp2Port() is not implemented.

    Useful References

    Acknowledgement

    This module is heavily inspired by the grpc native module. Some of the source code is adapted from the @grpc/grpc-js module.

    Keywords

    Install

    npm i grpc-server-js

    DownloadsWeekly Downloads

    178

    Version

    0.5.0

    License

    MIT

    Unpacked Size

    60.1 kB

    Total Files

    18

    Last publish

    Collaborators

    • cjihrig