DataPipe

By Samuel Everett

·

CASE STUDY · DATA ANALYSIS

A reusable Python pipeline framework: describe a pipeline in a YAML file, and DataPipe loads, validates, transforms, and reports, ending in a two-tab sales and financial KPI dashboard.

Python YAML Pandas Chart.js

Problem

Every new analysis started from scratch: another script to load the data, check it, clean it, and chart it. The logic got copied between projects, drifted apart, and broke in different ways each time.

Approach

  1. Configuration, not code. Each pipeline is defined in YAML: its sources, steps, and outputs. A new analysis means a new config file, not a new script.
  2. Stage registry. Load, validate, transform, and report stages are registered once and reused by name, so every pipeline runs the same tested code.
  3. Validation first. Data is checked before any transformation, so bad inputs stop the run instead of producing a misleading chart.
  4. Dashboard output. The last stage renders a self-contained Chart.js dashboard that opens in any browser, no server needed.

The dashboard

Sales Overview

The headline sales view: the numbers leadership checks first, on one screen.

Financial KPIs

  • Revenue bridge: what moved revenue between periods
  • Pareto: which products drive most of the revenue
  • Margin by product: what is actually profitable
  • Discount leakage: revenue lost to discounting

What I learned

The hard part of analytics isn’t the chart. It’s making the same steps run the same way every time. Pulling validation and transformation into a shared framework made every later project faster to build and easier to trust.

Want the details?

Config examples and the stage registry pattern are shared in the community.

Need reporting or automation like this?

I build Power BI dashboards, data pipelines, and AI workflows for operations teams.

NEWSLETTER

Get new builds in your inbox

One email when I publish a new case study or post: what I built, what broke, and how I fixed it. No spam. Unsubscribe anytime.