← All projects
Data · Full-stack

Autonomous Data Analyst

An AI-assisted analytics workspace: upload a dataset and get a data-quality report, findings and charts — backed by a deterministic profiling engine.

Role
Design & full-stack development
Timeline
2026
Type
Personal project
Stack
React, FastAPI, Cloudflare
Overview

The first hour with a new dataset is always the same. This workspace does it for you.

Before any real analysis, every dataset needs the same groundwork: checking types, missing values, duplicates, outliers and distributions. Autonomous Data Analyst automates that first pass and presents it as a readable workspace — overview, data quality, insights and charts.

Dataset overview — quality score, rows analysed, open issues and the analyst’s key findings.
Dataset overview — quality score, rows analysed, open issues and the analyst’s key findings.
Challenge & solution

What made it hard, and how I approached it.

The challenge

AI analysis you can actually trust

  • Language models are good at explaining data but can invent numbers.
  • Messy real-world files: mixed types, inconsistent categories, missing values.
  • Results had to be clear to people who don’t read raw statistics.
The solution

Deterministic numbers, readable findings

  • A FastAPI profiling engine computes every metric deterministically — the same file always gives the same report.
  • Issues are grouped by severity with the affected columns, so it is obvious what to fix first.
  • Findings and charts are generated from the computed profile, keeping explanations grounded in real values.
Key features

Built around what people actually need.

Data quality

A canonical quality score with detected issues — missing values, inconsistencies, outliers.

Insights

Evidence-backed findings, each linked to the columns and values behind it.

Charts

Distributions and category breakdowns chosen automatically from the dataset’s structure.

Autonomous Data Analyst on a phone
Responsive

Responsive workspace

The workspace adapts to smaller screens with a collapsible sidebar, so reports can be checked on the go.

  • Collapsible sidebar frees up the screen
  • Quality score and findings stay above the fold
  • Demo dataset works without uploading
In the data

What the profiling engine actually finds.

Both charts use the real output of the app’s FastAPI profiler, run on the deliberately messy demo dataset that ships with it.

Data quality

A score of 65, and the breakdown that explains it.

No missing values and no duplicate rows, but 14 issues: invalid quantities and percentages, an email column flagged as PII, and labels that mean the same thing written differently.

Source: profile_frame() in backend/main.py, run on the /api/demo dataset.

Consistency

Why consistency scores 55: one segment, two spellings.

“Enterprise” and “enterprise” count as different groups until the labels are standardised. Toggle to see the breakdown after cleaning.

Source: category_breakdown from the profiler output; the cleaned view merges case variants.

Screens

A closer look at the product.

How it works

Under the hood.

ReactTypeScriptVitePythonFastAPICloudflare PagesCloudflare Workers
Takeaway

What I learned.

Separating “compute” from “explain” was the key decision. Keeping every number deterministic and only using AI-style summaries on top of it made the tool far more trustworthy.

Next project

EDEN Smart Terrarium

A smart dual-plant terrarium and its live dashboard — sensors, pumps, a fan and a grow light, built as a group project for the Interactive Systems course.

View case study →
Let’s connect

Have an idea
worth exploring?