Curt Wheeler

Founder & AI Researcher

University of Miami 29'

An abstract depiction of a unified data science environment
Figure: Conceptual overview of JLab-DS bringing Python, R, and JupyterLab together

JLab-DS: A Ready-to-Use, Cross-Language Data Science Environment

A unified, reproducible environment that integrates Python, R, and JupyterLab—designed for researchers, students, and data enthusiasts who want to focus on discovery, not setup.


Table of Contents

  1. Introduction
  2. Why JLab-DS Exists
  3. Key Features
  4. Use Cases
  5. Technical Foundations
  6. Opportunities for Collaboration
  7. Conclusion

Introduction

Setting up a complete data science environment has historically been a time-consuming and frustrating task. Conflicts between R and Python, inconsistent library versions, and platform-specific issues all slow down research and learning.

JLab-DS changes that. It’s a pre-configured, Dockerized environment that combines Python, R, and JupyterLab into a single reproducible workspace. With JLab-DS, you can skip the configuration headaches and go straight to analysis, visualization, and modeling.

What you’ll gain:

  • A fully reproducible cross-platform environment
  • Seamless integration of Python and R workflows
  • Pre-installed libraries for immediate productivity
  • A platform built for both individual exploration and collaborative research

Why JLab-DS Exists

Data science is inherently interdisciplinary, and yet researchers and students often struggle with basic setup issues:

  • Dependency conflicts across languages and libraries
  • “It works on my machine” problems in collaborative projects
  • Steep setup costs in classrooms and research labs

JLab-DS was created to solve these challenges. Its purpose is to make powerful tools universally accessible with minimal setup. Whether in a university course, a research project, or a personal experiment, JLab-DS ensures everyone starts with the same standardized environment.


Key Features

  • Multi-Language Kernels: JupyterLab with both Python 🐍 and R 📊 kernels pre-installed.
  • Preloaded Libraries: Includes pandas, NumPy, Matplotlib, Plotly, Polars, tidyverse, ggplot2, Shiny, and more.
  • Cross-Platform: Runs identically on Windows, macOS, and Linux using Docker.
  • Simple Setup: Launch JLab-DS with a single docker compose up command.
  • Automatic Rebuilds: Update environment.yml and rebuild to add or change dependencies.
  • Extensible & Stable: Override defaults with docker-compose.override.yml without breaking the base setup.

Use Cases

Academic Coursework

Professors can distribute JLab-DS to students to avoid installation issues. Everyone uses the same versions of Python, R, and libraries.

Collaborative Research

Teams combining R-based statistics and Python-based machine learning can work in a unified JupyterLab environment, sharing notebooks seamlessly.

Prototyping & Experimentation

Test new libraries or workflows quickly, without risking conflicts in your local system.

Data Journalism & Publishing

Distribute code and results with reproducibility in mind—others can spin up your exact environment and reproduce findings.


Technical Foundations

  • Dockerized Environment: Guarantees reproducibility across platforms.
  • Micromamba + Conda: Lightweight and fast environment setup with reproducible dependency management.
  • JupyterLab: A modern, browser-based IDE with notebook, editor, and terminal integration.
  • Multi-Kernel Setup: Python via IPython kernel, R via IRKernel, with rpy2 bridging for cross-language workflows.
  • Thoughtful Defaults: Security and customization options included, with sensible defaults for local development.

Opportunities for Collaboration

JLab-DS is open source (Apache 2.0) and hosted on GitHub:
👉 curtmwheeler/jlab-ds

Ways to contribute:

  • Feedback & Testing: Use JLab-DS and report issues.
  • Code & Docs: Submit PRs for improvements.
  • Discussion & Ideas: Suggest features like Julia support or cloud deployment.
  • Advocacy: Share JLab-DS in classrooms, labs, and communities.

Conclusion

JLab-DS embodies a simple vision: remove the barriers to starting data science work.

By bundling Python, R, and JupyterLab into one reproducible environment, it empowers researchers, students, and enthusiasts to focus on what matters most—insights, collaboration, and innovation.

We invite you to try JLab-DS, contribute to its growth, and help shape the future of reproducible data science.