CERES user guide
Setup and system requirements
CERES is browser-first. The hosted version at ceres.wtf needs no installation or local server: choose Launch in the header, then open the capture director, demonstrator or Solo surface. Prepare the headset and capture space before creating a study run so permissions, storage and pairing do not interrupt the capture.
Use the hosted version
The hosted version is the quickest route to a capture. Use Launch at the top of the site and select the mode you need, or open the capture director, demonstrator or Solo mode directly. A paired run needs a Quest headset for the demonstrator and a current browser for the capture director. Solo needs only the Quest headset.
The capture devices still need:
- A Meta Quest headset with Quest Browser, outward-camera access and immersive WebXR support.
- A trusted HTTPS connection to CERES. Quest Browser will not grant camera, microphone or immersive WebXR capture permission to an ordinary HTTP page.
- Sufficient free headset storage for the planned run, including video and microphone audio when enabled. CERES checks durable browser storage before it arms the recorder.
- A current desktop browser for the capture director in paired capture. Keep the capture director and Quest on the same reliable network for the Local only connection profile.
- A clear, safely lit capture area and any study object in its intended starting position.
For a paired run, use Launch > Capture director on the desktop browser and open the invitation in Quest Browser. For a one-person run, open Launch > Solo mode in Quest Browser.
Permissions and privacy
Quest Browser asks for camera and microphone permissions when they are enabled. Grant the outward camera required by the study, then confirm that the preview and camera status are ready before entering XR. In Solo, Audio recording is off by default and is separate from Audio cues. Turn it on before the run only when the study requires raw microphone audio. In paired capture, the capture director controls raw audio recording from the monitor.
Record only with the participant's consent and the approvals required by the study. The outward video, microphone audio, head pose, hand joints, task labels and run metadata can identify people or study activity. The observed person and everyone else who may appear or be heard need the consent required by the study. Keep the browser profile and any exported dataset under the study's access controls. Read privacy and consent before the first recording.
Network choices
Local only is the right default when the capture director and demonstrator are on the same network. It keeps the peer capture path local and does not require a CERES account.
Local only and Direct paired capture do not require a CERES account. Relay is not selectable in the capture director. Eligible Direct sessions can request the experimental metered TURN fallback automatically when peer routing fails; that service requires remote access credentials. Hugging Face export requires a CERES account connected to Hugging Face, but its upload can continue in the background after local browser staging has finished.
Self-hosted capture requirements
The rest of this section applies only when your study operates its own CERES host. Use the packaged local-server path when the web application, signalling and filesystem-backed capture must stay on infrastructure controlled by the study. It requires:
- Windows 10 or Windows 11.
- Node.js
>=20.19 <21,>=22.12 <23or>=24. - Either Tailscale, signed in to the network shared by the Quest and capture director, or a trusted certificate and private key supplied through
CERT_FILEandKEY_FILEfor a hostname the Quest can reach.
Run CERES.cmd doctor before the first local capture, then start CERES.cmd and use the printed HTTPS URL. CERES.cmd --local-http is suitable only for checking the monitor on the host. It is not a Quest capture deployment.
Before the first participant
- Open the desired capture mode and create a short test run.
- Enable the outward camera and check its preview.
- Confirm
RECappears only after the recorder has armed. - Capture a brief test movement with both hands visible.
- In Storage and upload, keep the default private browser storage or choose a writable folder on the headset. CERES remembers that local destination in the browser profile and writes accepted episodes there after finalisation.
- Finish the test run, confirm that the local export completes, then inspect it in the dataset viewer.
Continue with your first capture once this preflight behaves as expected.