Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
The buddycloud API server written in Node.js
JavaScript Shell
Failed to load latest commit information.
contrib Add a start script
public Update demo page to suit
src fixed pubsub iq variable name
test fixed tests for application nodes
.gitignore Add npm-debug.log to .gitignore
.travis.yml Install a specific version of npm for caret version support in subpro…
Dockerfile Use 'master' for 'stable' docker build tag Hostname or IP is ok.
config.js.developer-example Requires ltx for api.js
config.js.example Add `disableWebsocket` to the example config
package.json Reinstate segfault-handler
server.js Reinstate segfault-handler


Build status

Build status of master branch

Build Status

Build status of the develop branch

Build Status


Install documentation is at

Realtime connection

A websocket (using the xmpp-ftw interface can be found at $server/scripts/buddycloud.js. This exposes a global object called Buddycloud which you can instantiate to give you a websocket connection.

Please see for more information on using this connection.


There is a docker image available for the API server. Configuration is currently passed via environment variables:

Configuration Example Description Required or default
XMPP_DOMAIN The XMPP domain for your server
XMPP_HOST The hostname or IP of your XMPP server
CHANNEL_COMPONENT The channel server component address
ANONYMOUS_COMPONENT An 'anonymous' component which can be used for open nodes null
MEDIA_ENDPOINT The endpoint for a media server null
PUSHER_COMPONENT The location of a pusher component null
FRIENDFINDER_COMPONENT The location of a friend finder component null
SEARCH_COMPONENT The location of a search component null
DISABLE_WEBSOCKET 0 Whether to disable the XMPP-FTW endpoint false
DEBUG 1 Whether to write additional debug to the logs false

Then simply launch the API server with the required environment variables as follows:

docker run -d -p 9123:9123 -e ..... buddycloud/api-server


Please log any issues at


For developing please see the config file named config.js.developer-example.

License and copyright

This code is Apache 2 licensed and copyright buddycloud.

Something went wrong with that request. Please try again.