Skip to content
EducationAndroidiOSWeb (admin)

Learning Management System

AI-assisted coaching platform — student app, admin console, and a multi-provider AI backend

A Flutter learning and personal-development platform built as a student app and an admin console over one Firestore backend, with an in-app AI assistant — chat, per-lesson summaries and recommendations — powered by a dedicated OpenAI/Gemini/Groq backend with vector search over the course library.

Learning Management System — app screenshot
Learning Management System — app screenshot
Learning Management System — app screenshot

The repositories are private. The lesson-grounded AI assistant, the Pinecone retrieval service behind it and the role-aware admin console are broken down below.

About this project

This isn't a plain course-and-video LMS. Content is organized as "Playbooks" — structured programs with sections and lessons that mix video, audio and article formats — sitting alongside a goal-setting module (users define a personal "why," set goals, log actions and track progress), scheduled live team classes with assigned mentors, a quiz/assessment engine with per-category results, and a gamification layer of badges and login/exercise streaks.

The most technically interesting piece is the AI layer. An in-app assistant lets a user chat about their content and ask for a summary of the specific lesson they're on; the request carries the exact playbook/section/lesson IDs so the backend can ground its answer in that content. That backend isn't a single API call — it's a TypeScript Firebase Cloud Functions layer (chat, recommendations, an audio processor, a daily-exercise picker) that itself calls out to OpenAI, Google's Gemini SDK and Groq, plus a separate Python/Flask service that builds a Pinecone vector index over the course library for retrieval and runs an agent-based assessment pipeline.

The student app and admin console share one Firestore backend and Riverpod for state on both sides, so a course or announcement an admin publishes is live for students without a redeploy. The admin console itself is role-aware: full admins get playbook/user/mentor/team management, dashboards and content editors, while coaches get a scoped view — their teams, their team's members, and notifications — behind the same login screen.

Monetization runs through RevenueCat (in-app purchases/subscriptions with a trial flow), and premium lesson content is protected against screen capture. The student app also ships offline-first touches (Hive-cached data, a background audio player with lock-screen controls for audio lessons) and push notifications via Firebase Cloud Messaging.

Key features

  • AI assistant: threaded chat plus one-tap per-lesson summaries, grounded in the exact playbook/section/lesson via a TypeScript Cloud Functions layer that calls OpenAI, Gemini and Groq
  • Retrieval backend: a separate Python/Flask service builds a Pinecone vector index over the course library and runs an agent-based assessment pipeline
  • Structured "Playbook" content (sections + lessons) across video, audio and article formats, with a background audio player and lock-screen controls
  • Goal-setting module — define a personal "why," set goals, log actions, track a goal history
  • Gamification: earned badges and login/exercise streaks tracked per user
  • Live team classes with assigned mentors, upcoming/past scheduling and filters
  • Quiz and assessment engine with per-category scoring and detailed result breakdowns
  • Role-aware admin console: full admin (playbooks, users, mentors, teams, content, dashboard) vs. a scoped coach view (their teams, their members, notifications) behind one login
  • RevenueCat-powered subscriptions with a trial flow; screen-capture protection on premium lesson content

More in Education

~/sherazi.dev$./say-hello

Say hello.

Questions about a case study, one of the packages, AI tooling or Flutter in general are always welcome.

// or browse the packages on pub.dev(opens in a new tab)