Repository navigation
Home
DataLab is an open-source scientific platform for 1D signal and 2D image processing and visualization, designed to support advanced analysis workflows in research and industry.
Built on top of proven Python libraries (NumPy, SciPy, scikit-image, OpenCV) and a Qt-based interface (PlotPyStack), DataLab provides a powerful yet extensible environment for interactive and automated data processing.
For more information, please visit the official website.
- Talk: From Spyder to DataLab: 15 years of scientific software crafting in Python
- Video
- Poster: DataLab: Bridging Scientific and Industrial Worlds for Advanced Signal and Image Processing (PDF)
- Talk: DataLab: Bridging Scientific and Industrial Worlds for Advanced Signal and Image Processing
- Video
The main goal of the project is to refactor and decouple DataLab's core data model and computational functions from its utilities and user interface. This will result in a modular library named Sigima, which will serve as the computational backbone for the application layer. The refactoring will support scalability, improved integration into external workflows, and set the stage for long-term sustainability and feature growth (e.g., web-based frontends).
| This is called the DataLab Core Architecture Redesign (DCAR) project, and it is funded by the NLnet Foundation as part of the NGI0 Commons Fund. |
This work aims to:
- Improve modularity and maintainability of the codebase,
- Enable usage of DataLab's computational features without the GUI,
- Prepare the ground for future extensions (e.g. web frontend).
For details on deliverables, see the following reports:
| Report | Date | Description |
|---|---|---|
| 📄 DCAR Report #1 | 2025-06-26 | Initial report on the core architecture redesign project. |
| 📄 DCAR Report #2 | 2025-07-29 | Progress report on the core architecture redesign project. |
| 📄 DCAR Report #3 | 2025-12-15 | Final report on the core architecture redesign project. |
ℹ️ The DCAR project has been successfully completed with the release of Sigima V1.0.0 and DataLab V1.0.0 in late 2025.
The DEW project delivers a browser-native reimplementation of DataLab. The full application — signals, images, ROIs, processings, fits, plugins, macros, notebooks, HDF5 I/O — runs locally inside the browser tab through Pyodide (CPython compiled to WebAssembly), with Sigima as the computation engine and a custom React + TypeScript UI modelled on the desktop Qt application. No install, no account, no upload: data never leaves the user's machine.
The project is structured around three tasks:
- Web Frontend Prototype — feature-rich browser-native DataLab. ✅ Completed (Report #2, 2026-06-26)
- Local-First Scientific Workspace Exchange (formerly Snapshot Sync Server) — shared provenance in DataLab Desktop and DataLab-Web, open workspace capsules (RO-Crate), the independent DataLab-Capsule toolkit and an optional registry. ✅ Completed (Report #3, 2026-10-20)
- Accessibility and Security — WCAG-driven accessibility improvements and a security hardening pass.
| The DataLab Experimental Web Interface (DEW) project is funded by the NLnet Foundation as part of the NGI0 Commons Fund. |
- 🚀 Live demo: https://datalab-platform.com/web/
- 💻 Repository: https://github.com/DataLab-Platform/web
- 📦 DataLab-Capsule: https://github.com/DataLab-Platform/DataLab-Capsule
- 📐 Capsule profile 0.1: https://datalab-platform.com/capsule/0.1/
For details on deliverables, see the following reports and decision records:
| Document | Date | Description |
|---|---|---|
| 📄 DEW Report #1 | 2026-05-14 | First progress report — Task 1 milestones 1a–1g delivered. |
| 📐 DEW-ADR-001 — Browser-Native Frontend Architecture | 2026-05-14 | Architecture Decision Record consolidating the React + TS / Pyodide / Sigima stack and comparing the alternatives considered (JupyterLite, Panel/Dash/Solara, server-connected SPA). |
| 📐 DEW-ADR-002 — Off-Thread Runtime and On-Disk Storage | 2026-06-07 | Architecture Decision Record adopting a worker-hosted runtime (the default since Report #2) behind a RuntimeApi façade, with OPFS on-disk array spill to lift the ~2 GB wasm32 memory ceiling, and batch-level cooperative cancellation as the static-hosting-safe interruptibility model. |
| 📄 DEW Report #2 | 2026-06-26 | Second progress report — milestones 1h (performance, off-thread runtime, interruptible batch processing) and 1i (internationalisation + French) delivered; Task 1 fully complete. |
| 📄 DEW Report #3 | 2026-10-20 | Final report on Task 2 — shared provenance and bounded replay in both editions, capsule profile 0.1, DataLab-Capsule 0.1.0, optional registry, DataLab-Web 0.10.0 exchange interface and final validation with the published packages; Task 2 fully complete. |