ocpp-ws-io
/projects/ocpp-ws-io

ocpp-ws-iobuild dossier

TypeScriptNode.jsWebSocketsAjvRedisOCPP
build.metadata
RoleCreator & Maintainer
DurationFeb 2026
StatusPublished on npm
TelemetryActive
overview

An open-source, TypeScript-first OCPP-J WebSocket RPC library for Node.js with end-to-end type safety. Implements the full OCPP-J specification across 1.6, 2.0.1, and 2.1 with version-aware call() / handle() APIs, auto-generated types, all four OCPP security profiles, JSON-schema validation, auto-reconnect, and Redis-based clustering. Framework-agnostic — runs standalone or integrates with Express, Fastify, and NestJS.

implementation.notes
1Implement OCPP-J RPC framing — Call, CallResult, and CallError — strictly per specification.
2Infer request and response types automatically based on the OCPP version in use.
3Support all four OCPP security profiles, from no security to mutual TLS with client certificates.
4Scale horizontally with a Redis-based clustering adapter compatible with ioredis and node-redis.
readonlyconnected
design.principles

End-to-end Type Safety

Version-aware call() and handle() APIs infer params and responses per OCPP version for full autocomplete.

Full OCPP-J RPC

Spec-accurate Call / CallResult / CallError framing with every RPC error class exported.

Production-grade

Four security profiles, Ajv schema validation, auto-reconnect with backoff, and Redis clustering.

system.architecture
// RPC Framing Engine

Handles OCPP-J Call/CallResult/CallError message framing per specification.

// Version-aware Type System

Auto-generated, per-version typed params and responses for compile-time validation.

// Clustering Adapter

Redis-backed horizontal scaling with handleUpgrade integration for any HTTP server.

previousVoltlognextAPI Studio

Want to discuss a similar build?

Use this project as a reference point and send the workflow, timeline, and constraints you care about most.

open contact.env
RT