Registry / messaging / harcon-radiation

harcon-radiation

JSON →
library9.2.40jsnpmunverified

REST and Websocket plugin for harcon that automatically exposes service entities through REST and Websocket interfaces. Version 9.2.40 requires Node >= 8.0.0. Extends the harcon microservice framework with automatic RESTful/JSON-RPC/Websocket endpoints based on entity metadata. Uses fastify internally for HTTP/WS. Release cadence irregular; maintained by imrefazekas.

npm install harcon-radiation
INSTALL
IMPORT
SIG · HARCON-RADIATION
H
harcon-radiation
messagingjavascriptv9.2.40
harness data pending
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.

Server
const Server = require('harcon-radiation/util/Server');
const Server = require('harcon-radiation').Server;
Server is not exported from main module; must import from 'harcon-radiation/util/Server'.
Radiation
const Radiation = require('harcon-radiation');
import Radiation from 'harcon-radiation';
Provides Radiation class directly; CommonJS only.
restRPC
const radiation = new Radiation(harcon, config);
const restRPC = require('harcon-radiation').restRPC;
RestRPC is not exported as a separate symbol; use Radiation constructor.

Creates a Server instance with harcon and radiation, then registers an entity with rest and websocket flags to expose its services.

const Server = require('harcon-radiation/util/Server'); const server = new Server({ name: 'King', server: { port: 3000 }, harcon: { /* harcon config */ }, radiation: { /* radiation config */ } }); await server.init(); // Example service entity to be exposed: const entity = { name: 'math', services: { add: (a, b) => a + b }, rest: true, websocket: true }; await server.harcon.register(entity); // Now POST /math/add with { a: 1, b: 2 } returns 3
Debug
Known issues
breakingOnly supports Node >= 8.0.0 and async/await. Removes callback support.
fix
Use async/await or use harcon-radiation v7.x for callbacks.
affects: >=8.0.0
deprecatedRESTful mode (option 1) is deprecated in favor of JSON-RPC or Harcon RPC.
fix
Use JSON-RPC option (option 2) or Harcon RPC (option 3).
affects: >=7.0.0
gotchaServer class is not exported from main package; must require from subpath 'harcon-radiation/util/Server'.
fix
Use require('harcon-radiation/util/Server') instead of require('harcon-radiation').
affects: *
gotchaEntities are only exposed if they have 'rest' or 'websocket' property set to true.
fix
Ensure your entity object has rest: true and/or websocket: true.
affects: *
gotchaThe server.init() method is async; must be awaited.
fix
Add await before server.init().
affects: >=8.0.0
Errors
Common errors & fixes
Cannot find module 'harcon-radiation/util/Server'
Incorrect import path or missing dependency.
fix
Verify package is installed: npm install harcon-radiation. Then use require('harcon-radiation/util/Server').
TypeError: server.init is not a function
Server object not correctly constructed or init method not awaited.
fix
Ensure Server is imported correctly and call await server.init() in an async function.
TypeError: entity.services.add is not a function
Service definition is missing or incorrect.
fix
Ensure entity.services contains functions as values, not objects or strings.
Upgrade
Version history
9.2.40latest on npm
Audit
Dependencies
harconrequiredcore dependency; needed for microservice orchestration
fastifyrequiredunderlying HTTP server for REST and WebSocket
Agent activity
21 hits · last 30 days
node
20
OpenAI (training)
1
Resources
harcon-radiation — npm install harcon-radiation · libregistry