Sylk WebRTC Client, focused on multiparty conferencing, is the companion client for SylkServer.
Sylk is built using HTML and JavaScript and uses the SylkRTC API to talk to SylkServer. It can be served as a web page using the web server of your choice, or it can be packaged as a stand alone desktop application using Electron. This repository contains the code to build the website and a companion Electron app.
Sylk WebRTC Client is preconfigured to use with the free service SIP2SIP.
The default settings of the app are found in src/app/config.js.
If you wish to use the client together with another instance of SylkServer,
you must edit src/app/config.js.
The keys in config.js have the following functions:
Node.js is needed for development. Version >= 16.1.0 is required. For
convenience the configure script and Makefile are provided.
Node.js can be downloaded from https://nodejs.org
yarn must be used to install dependencies, it can be installed as follows:
npm install -g yarn
NOTE: depending on your Node installation you might need to use sudo.
./configure
For Windows build:
brew cask install xquartz
brew install wine
make
make watch
make deploy
make deploy-test
To deploy the built website to your own web server, copy the contents of the dist/ folder to the location on de website where you want it to be available. See examples/apache/.htaccess for required rewrite rules.
The version number can be set in app/package.json
make electron
make app-run
APPLE_ID=YOUR_APPLE_ID
APPLE_ID_PASSWORD=YOUR_CUSTOM_PASSOWRD_FOR_THE_APP
make pkg-osx
make pkg-win
NOTE: If building on macOS Wine must be installed with brew install wine.
make pkg-linux
NOTE: Requires a GNU/Linux system with the following packages installed: icnsutils, graphicsmagick
make clean
make distclean
By default Sylk doesn't output a lot of information to the browser's JavaScript console. Console debug messages are namespaced by library, the two most important ones being 'sylkrtc' and 'blinkrtc'. In order to enable debugging for both open the browser's JavaScript console and type the following:
window.blinkDebugger.enable('sylkrtc*,blinkrtc*');
Then reload the page. Debug messages will be logged to the console now.
Electron app debug can be enabled from Debug/Open DevTools menu.
Sylk is available under the AGPLv3 license. See the LICENSE file.
The following organizations have helped the development of Sylk by providing funding:
$ claude mcp add sylk-webrtc \
-- python -m otcore.mcp_server <graph>