{"id":18544722,"url":"https://github.com/131/ubk","last_synced_at":"2025-04-09T19:31:14.755Z","repository":{"id":29909423,"uuid":"33455230","full_name":"131/ubk","owner":"131","description":"micro message broker for nodejs","archived":false,"fork":false,"pushed_at":"2024-06-04T00:07:03.000Z","size":233,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-10-28T15:13:48.828Z","etag":null,"topics":["broker","json-stream"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/131.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-04-05T21:05:27.000Z","updated_at":"2024-06-04T00:07:03.000Z","dependencies_parsed_at":"2024-06-21T15:34:56.168Z","dependency_job_id":"b8289587-26ff-4597-90e3-2aa46d97f996","html_url":"https://github.com/131/ubk","commit_stats":null,"previous_names":[],"tags_count":71,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/131%2Fubk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/131%2Fubk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/131%2Fubk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/131%2Fubk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/131","download_url":"https://codeload.github.com/131/ubk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223407794,"owners_count":17140563,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["broker","json-stream"],"created_at":"2024-11-06T20:17:25.074Z","updated_at":"2024-11-06T20:17:25.570Z","avatar_url":"https://github.com/131.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ubk\nHigh performance, micro [JSON streaming](https://en.wikipedia.org/wiki/JSON_Streaming) message broker for v8.\n[ubk](https://github.com/131/ubk) use ES8 async/await design (backed on [co/eventemitter-co](https://github.com/131/eventemitter-co)\n\n\n[![Build Status](https://github.com/131/ubk/actions/workflows/test.yml/badge.svg?branch=master)](https://github.com/131/ubk/actions/workflows/test.yml)\n[![Coverage Status](https://coveralls.io/repos/github/131/ubk/badge.svg?branch=master)](https://coveralls.io/github/131/ubk?branch=master)\n[![Version](https://img.shields.io/npm/v/ubk.svg)](https://www.npmjs.com/package/ubk)\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)](http://opensource.org/licenses/MIT)\n[![Code style](https://img.shields.io/badge/code%2fstyle-ivs-green.svg)](https://www.npmjs.com/package/eslint-plugin-ivs)\n\n\n# Key features\n* Exupery style. (You will not make it any smaller or simplier)\n* Broker support application (backend) \n* pub/sub pattern\n* RCP support (asynchronious procedure calls)\n* Reflection API (list connected clients)\n\n\n\n\n## Server API\n * Server implement EventEmitter API.\n`.register_cmd(ns, command, callback)`\n  subscribe for a specific message in NS, callback is callback(client, query)\n\n`.broadcast(ns, cmd, payload)`\n  * send a payload message to all connected clients\n  * emit local event \"ns:cmd\" \n\n### Events\n  Broadcast messages are forwarded into the EventEmitter dispatcher\n  * \"base:registered_client\"\n  * \"base:unregistered_client\"\n\n\n### Base (internal) messages\n  \"base:ping\" , send periodicaly to all client to check for a living connection\n    *payload : none\n  \"base:registered_client\", broadcasted to all client on new client registration\n    *payload : client\n  \"base:unregistered_client\", broadcasted to all clients on client disconnection\n    *payload : client\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F131%2Fubk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F131%2Fubk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F131%2Fubk/lists"}