Skip to content

Add npm publishing support for @ucl-vr/ubiq and @ucl-vr/ubiq-server#64

Merged
nsalminen merged 2 commits intomasterfrom
node-refactor
Mar 22, 2026
Merged

Add npm publishing support for @ucl-vr/ubiq and @ucl-vr/ubiq-server#64
nsalminen merged 2 commits intomasterfrom
node-refactor

Conversation

@nsalminen
Copy link
Copy Markdown
Member

@nsalminen nsalminen commented Mar 20, 2026

The Ubiq Node server and core messaging library have not previously been published to npm. This PR introduces everything needed to publish them under the @ucl-vr scope, enabling developers to install and integrate them as dependencies in their own Node.js projects. This PR closes #63 upon merging.

The codebase was already structured as two separate packages internally, and this publishing approach preserves that separation:

  • @ucl-vr/ubiq — The core messaging and networking library for the Ubiq platform. It provides connection management, message passing, and network scene abstractions over TCP and WebSocket. This package is intended for developers who want to build custom applications or services on top of the Ubiq messaging layer without running a full room server.

  • @ucl-vr/ubiq-server — The complete Ubiq room server, which depends on @ucl-vr/ubiq and adds room management, rendezvous, peer-to-peer signalling, and ICE server coordination. This is the package to install when hosting a server that Unity and browser clients connect to.

Maintaining this separation allows lightweight consumers — such as bots, data loggers, or custom services — to depend only on the core library without pulling in the full server and its dependencies. This PR updates the version numbers of each package to 1.0.0, which will be separately versioned from the Unity package. For future Ubiq package releases, the recommended/minimal Ubiq server version could be listed.

Key Changes

  • Added a GitHub Actions workflow triggered by node-v* tags that builds and publishes both packages to npm in dependency order
  • Added a bin entry point (ubiq-server) so the server can be started directly with npx @ucl-vr/ubiq-server or after a global install, without cloning the repository
  • Improved the description fields in both package.json files to more accurately reflect the purpose of each package
  • Updated documentation (serversetup.md, nexus.md, README.md) to mention npm installation and npx usage as alternatives to cloning the repository

Set up both Node packages for publishing to npm under the @UCL-VR scope at v1.0.0, with a tag-triggered CI workflow and updated documentation.
@nsalminen nsalminen merged commit 7040a91 into master Mar 22, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Server package versioning and NPM registry

2 participants