Inspiration

Most AI study tools can answer questions, but they do not truly understand a learner's study material, learning progress, or mistakes. We wanted to build something closer to a personal learning system rather than another chatbot.

What we built

Ming is an AI-powered learning platform that turns a student's learning resources, study activity, assessments, and progress into a personalized learning experience.

At its core,Ming combines a secure multi-tenant data layer, retrieval-augmented generation (RAG), grounded AI responses, assessments, study planning, learner progress tracking, and mastery-oriented learning workflows in one platform.

Instead of generating answers from an isolated chat prompt,Ming retrieves relevant learning context, applies strict user-level access controls, and generates responses grounded in the learner's available knowledge sources. Evidence and source coordinates are preserved through the retrieval pipeline so that generated answers can be traced back to their underlying learning material.

How we built it

The platform is built around a production-oriented architecture:

  • A Node.js/TypeScript API handles authentication, routing, rate limiting, validation, and request reliability.
  • PostgreSQL provides the relational data layer.
  • pgvector provides semantic retrieval using 384-dimensional embeddings and HNSW cosine search.
  • A pluggable vector-store architecture allows the RAG system to operate with PostgreSQL/pgvector in production while retaining Chroma for local development.
  • Gemini powers the AI generation layer.
  • Python services handle the RAG and retrieval pipeline.
  • Supabase provides authentication and PostgreSQL infrastructure.
  • Prisma provides the database abstraction layer.

Security is designed into the architecture rather than added as an afterthought. User identity is derived from the authenticated session, private knowledge is tenant-scoped, public knowledge is explicitly separated, and unauthenticated access to private vectors fails closed.

What makes it different

Ming is designed around a complete learning loop rather than a standalone AI chat interface:

Learn → Retrieve → Understand → Practice → Assess → Identify gaps → Improve

The system is built to make AI tutoring more grounded, personalized, and reliable while maintaining production-grade data isolation.

We have also built automated security, integration, and RAG evaluation suites to continuously verify retrieval quality, grounding, citation coordinates, refusal behavior, and tenant isolation.

Challenges

The hardest part was not connecting an LLM to an application. It was making the entire system reliable.

We had to solve multi-tenant RAG isolation, authenticated identity enforcement, vector-store abstraction, PostgreSQL/pgvector migration, embedding-dimension consistency, grounded retrieval, controlled AI failures, production configuration validation, observability, and end-to-end testing.

The result is a learning platform designed as a real software product—not simply an LLM wrapper.

Built With

Share this project:

Updates

Submission history