Le Wagon Workshop

A workshop project developed during Le Wagon bootcamp. This project demonstrates practical application of web development and data science skills learned during the program.

Technologies Used

Python Dash Plotly Web Development Data Visualization

Building Interactive Data Apps with Dash: A Hands-On Workshop

Earlier this month, I had the pleasure of leading a hands-on workshop focused on building interactive data applications using the Dash framework at Le Wagon coding school. Le Wagon is a leading coding bootcamp that offers intensive, project-based programs in web development and data science, teaching students practical skills through real-world projects and collaborative learning.

Le Wagon Workshop

This article recaps the experience, shares insights from the workshop, and offers resources if you'd like to follow along or run your own version.

Why Dash?

Dash is an open-source Python framework designed for building interactive web apps—without needing to use JavaScript. It's especially suited for data professionals who want to turn their data pipelines and analysis into shareable tools with interactive front ends.

We also used Plotly, the powerful graphing library that Dash is built on, to generate rich visualizations across our app.

What We Covered

This workshop was built as a code-along session—each participant progressed through a series of structured exercises, building a Dash app from scratch. Each exercise introduced new components or patterns and gradually layered more interactivity and polish into the final product.

Workshop participants coding

Key Libraries Introduced

  • Dash Core Components (DCC): Graphs, sliders, dropdowns
  • Dash Mantine Components (DMC): Responsive, modern UI elements
  • Dash Bootstrap Components (DBC): Layout and theming tools
  • Dash AG Grid: High-performance tabular data visualization

By mixing components from different libraries, participants got a sense of the flexibility Dash offers when it comes to building UI.

Dataset Used

We used the Netflix Titles dataset, a rich collection of metadata about shows and movies on Netflix. It's approachable and just the right size for interactive dashboards.

The Exercises

The workshop was broken down into six progressive exercises, each of which is available in the GitHub repo. Here's a high-level overview:

  1. Basic Layout - Setting up the project and creating a simple Dash layout.
  2. Static Graphs - Using Plotly to create bar charts and integrate them with the layout.
  3. User Input - Adding dropdowns and input fields to drive interactivity.
  4. Dynamic Filtering - Filtering data based on user input and updating visualizations accordingly.
  5. Responsive Layouts - Leveraging Bootstrap and Mantine for professional-looking design.
  6. AG Grid Integration - Displaying the dataset in a feature-rich table with sorting, filtering, and formatting.

Each script included the solution to the previous step, making it easy for participants to catch up if they fell behind.

Workshop in progress

Tools and Setup

The entire workshop environment was built using Python and the following stack:

  • Dash
  • Plotly
  • Dash Core Components
  • Dash Mantine Components
  • Dash Bootstrap Components
  • Dash AG Grid

Participants only needed basic Python knowledge and could install all requirements with a simple pip install -r requirements.txt.

Takeaways

  • Dash lets data practitioners build full-stack apps with just Python.
  • Combining component libraries can drastically improve UX.
  • Using a simple but rich dataset like Netflix Titles keeps focus on functionality and layout.
  • Code-along formats are highly effective for onboarding new users to Dash.

You can find the complete workshop materials, including all exercises and solutions, in the GitHub repository.