RELab is an open-source research platform for collecting and publicly viewing data on the disassembly of durable goods. It is built at CML, Leiden University to support industrial ecology and circular economy research through better primary product data generation.
It combines:
- a FastAPI backend for structured product, media, and user data
- an Expo / React Native app for authenticated data collection
- an Astro site for publicly viewing project and dataset information
- a separate docs site for architecture, workflows, and deployment notes
The platform is meant to do two things at once:
- support structured data collection during disassembly work
- make that data easier to publish, browse, and reuse later
The broader research vision comes from a simple problem: industrial ecology has many data platforms, but far fewer open, low-barrier workflows for generating new standardized product-level observations.
RELab addresses that gap with a bottom-up model:
- middle- and end-of-life actors such as repairers, refurbishers, dismantlers, and recyclers can contribute data directly
- collaborative and citizen-science style workflows can turn routine repair and disassembly into structured observations
- the resulting records can be shared openly, linked to related databases, and reused in later research
The long-term goal is to contribute to an open industrial ecology data commons by combining collaborative data collection, public data access, interoperability with existing and upcoming databases, and AI-ready structured observations.
The fastest path is the hosted platform:
If you want to go deeper:
- Install & Self-Host for running or self-hosting the stack
- CONTRIBUTING.md for making code or docs changes
- docs.cml-relab.org for architecture and user-facing docs
| Path | Purpose |
|---|---|
backend/ |
FastAPI API, auth, data model, file handling, plugins |
frontend-app/ |
Expo / React Native research app |
frontend-web/ |
Astro public website |
docs/ |
Documentation site |
Infrastructure is orchestrated with Docker Compose from the repo root.
just setup # install workspace dependencies and pre-commit hooks
just ci # run the canonical local CI pipeline
just test # run local test suites
just security # run dependency and security checks
just dev # start the full Docker dev stack with file watchingQuestions about the platform, code, or dataset: relab@cml.leidenuniv.nl