Analyzes hardware telemetry data metrics like power, voltage, and temperature measurements. The app parses it, computes summaries, and lets you visually compare these metrics.
After a parameter sweep run, you are left with dozens of CSV files across many runs and you had to open each one and make calculations yourself. No history or charts that you could share. This project allows you to automate the data analysis part and keep the history of them.
- Upload a sweep folder and automatically parse hundreds of telemetry CSVs
- Compare runs side-by-side with overlaid charts
- Detect anomalous runs with ML-based outlier scoring
- Automatically select the winner of a sweep based on a chosen metric
- Persistent history of past sweeps stored across sessions
- FastAPI — chosen for auto-generated Swagger docs at /docs and type-hint-based request validation, which made it easy to test endpoints without writing curl commands or Postman collections.
- Streamlit — gives you web UIs and native Python integration that React doesn't offer, and let me ship a working dashboard in hours instead of days. The tradeoff (less UI customization) didn't matter since the audience is engineers, not consumers.
- SQLite — picked over Postgres because this is a single-user local project and Postgres would mean a third container and a database server to manage, which doesn't make sense at this scale.
- Docker — bundles the app, dependencies, and config into one runnable image with a simple docker compose up command. Portfolio repo means anyone can clone and run it without "works on my machine" issues.
- pandas — gives you DataFrames with vectorized operations in one line, saving the manual looping and type conversion that raw CSV reading would require across 48 columns and thousands of rows.
┌─────────────┐ HTTP ┌──────────────┐ HTTP ┌─────────────┐
│ Browser │ ───────> │ Streamlit │ ───────> │ FastAPI │
│ (port 8501) │ <─────── │ Dashboard │ <─────── │ (port 8001)│
└─────────────┘ └──────────────┘ └──────┬──────┘
│
┌───────────┴───────────┐
│ │
v v
┌──────────┐ ┌──────────────┐
│ SQLite │ │ sample_data/ │
│ .db │ │ (volume) │
└──────────┘ └──────────────┘
git clone https://github.com/NathanChung4/telemetry-bench.git
cd telemetry-bench
docker-compose up --buildsrc/telemetry_bench/- Application source code (API, parser, dashboard)tests/- Unit testsDockerfile- Container image definitiondocker-compose.yml- Multi-container orchestration



