← All work
LiveMasinyusane · Zazi iZandi

Data portals with an AI analyst built in

Public and internal dashboards over four years of assessment, session and youth-programme data, with chat agents that answer questions about the results.

children in the data platform
10,700+
children in the data platform
schools
341
schools
session records
134,000+
session records
Data portal chart: Grade 1 children on grade level for letter knowledge, baseline versus midline
Programme dashboard showing schools, sessions this month, dosage and on-track groups

The problem

Programme data lived across Airtable bases, spreadsheets and field tools. Leaders and funders needed trustworthy numbers, and managers needed answers without waiting for an analyst.

What I built

  • A central data warehouse that syncs nightly from the field systems, with stable IDs for every child and school across years.
  • Public and staff-only data portals with dashboards for literacy assessments, sessions and youth programmes from 2023 onwards.

The AI inside

  • MasiAnalyze: a chat analyst that uses function calling to query real programme metrics and grade-level benchmarks, instead of guessing.
  • Zazi Bot: an agent built on the OpenAI Agents SDK that answers questions about results for logged-in staff.

Where it stands

Both portals are live (data.masinyusane.org and the Zazi iZandi portal), and the AI analysts are available to signed-in staff.

PythonStreamlitDjango + PostgresOpenAI function callingOpenAI Agents SDKDocker

Want something like this?

Tell me what you're trying to do. If I can build it well, I'll show you how; if not, I'll point you somewhere better.