Skip to content

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
Site Covers
Va.Si.Li-Lab The VR client and Unity framework
InterView The VR interview platform and its deployment