Va.Si.Li-Lab Backend
Monorepo for the backend services used by Va.Si.Li-Lab.
The modules are independent. A minimal deployment needs only two of them - the Database API and the Ubiq server. Everything else is optional and exists to support particular scenarios.
Modules
-
Database API - required
Scene, level and role definitions, plus the logging endpoints that every tracking sample and event is written through. Backed by MongoDB.
-
Ubiq Server - required
Room and session server. Keeps avatars, transforms and object ownership in sync between connected clients.
-
Chatbot - optional
Host process that dynamically loads chatbot clients over a socket connection and exposes them as a single queryable endpoint.
-
Speech - optional
Speech-to-text based on Whisper.
Not every backend module is in this checkout
The main branch of this repository also has a vr-agent/ module
(LLM-backed conversational agents) and a tts-stt/ module (WhisperX STT +
TTS). Neither is present here yet - pull them in and extend this site when
you do.
Which services do I need?
| Scenario | Required | Optional |
|---|---|---|
| Any Va.Si.Li-Lab deployment | Database API, Ubiq | - |
| Recording an experiment | Database API, Ubiq | - |
| Scenarios with a chatbot | Database API, Ubiq | Chatbot |
| Voice-driven interaction | Database API, Ubiq | Speech |
InterView deploys a subset of these
The InterView platform runs the Database API and the Ubiq server from this repository, alongside a Janus WebRTC gateway and a web client. Its setup guide covers deploying them together with Docker Compose.
Repository layout
| Path | Module |
|---|---|
database-api/ |
Database API |
Ubiq-server/ |
Ubiq Server |
chatbot/ |
Chatbot host and clients |
speech2text/ |
Whisper speech-to-text |
docker-images/ |
Shared base images - see Deployment |
Related documentation
| Site | Covers |
|---|---|
| Va.Si.Li-Lab | The VR client and Unity framework |
| InterView | The VR interview platform and its deployment |