Slurk (think “slack for mechanical turk”…) is a lightweight and easily extensible chat server built especially for conducting multimodal dialogue experiments or data collections. See Slurk: What’s this? for a description of the main concepts. Or jump right in with the Getting Started Guide!
The main idea of Slurk is to have a platform can be used without any change to the Slurk Server by creating task-specific bots. The bots can create rooms, custom chat layouts and control the distribution of users to rooms. In the following architecture overview the main components of Slurk are outlined.
Slurk is built in Python 3, on top of flask and flask-socketio.
To run locally
- Download the sources
git clone [email protected]:clp-research/slurk.git
cd slurk
- create an environment
conda create -n slurk python=3.7.10
conda activate slurk
- install the requirements and execute
run.py
orlocal_run.py
pip install -r requirements-3710.txt
python local_run.py
- check server start
INFO [engineio.server]: Server initialized for gevent.
INFO [slurk]: loading layout from F:\Development\git\slurk\app\models/../static/layouts/default.json
INFO [slurk]: generating admin room and token...
- open a browser tab on
localhost:5000
and login with any username and the admin token
If you want to build the documentation yourself, you need the packages sphinx and sphinx_rtd_theme. Then you can create the documentation in the docs folder:
pip install sphinx sphinx_rtd_theme
cd docs
make html
The full documentation can then be found at docs/_build/
Happy slurking!