microsoft / microsoft/agentsleague

Creative Apps - AI Knowledge Coach

Open
#82 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
No language data
Stars
286
Forks
92
Avg merge
12h 44m
Merged PRs (30d)
1

Description

Track

Creative Apps (GitHub Copilot)

Project Name

AI Knowledge Coach

GitHub Username

@kavsrd13

Repository URL

https://github.com/kavsrd13/agent-league-AI-Knowledge-coach

Project Description

What does your project do?
AI Knowledge Coach is a minimal, polished AI-powered web application that helps users quickly learn any topic by generating structured summaries, key insights, interview questions, and a mini knowledge-check quiz.

What problem does it solve?
When trying to learn a new concept quickly, users are often overwhelmed by unstructured information or struggle to test their understanding. This application solves that by instantly synthesizing any topic into a consumable, structured learning guide, complete with built-in assessment (MCQs) and interview preparation prep.

What are the key features?

  • Instantly generates a structured summary, 5 key insights, and 3 interview questions for any topic.
  • Includes an interactive 5-question knowledge check quiz.
  • Allows users to download their personalized learning guide as a clean, formatted PDF.
  • Features a modern, minimal UI built with Streamlit.
Demo Video or Screenshots

Demo Video : https://youtu.be/cNpN9WctMng

Primary Programming Language

Python

Key Technologies Used
  • Azure OpenAI Service (gpt-4.1)
  • Streamlit (UI Framework)
  • fpdf (PDF Generation)
  • GitHub Copilot (AI pair programming support)
Submission Type

Individual

Team Members
  • @kavsrd13 - Full Stack AI Developer
Submission Requirements
  • My project meets the track-specific challenge requirements
  • My repository includes a comprehensive README.md with setup instructions
  • My code does not contain hardcoded API keys or secrets
  • I have included demo materials (video or screenshots)
  • My project is my own work with proper attribution for any third-party code
  • I agree to the Code of Conduct
  • I have read and agree to the Disclaimer
  • My submission does NOT contain any confidential, proprietary, or sensitive information
  • I confirm I have the rights to submit this content and grant the necessary licenses
Quick Setup Summary
  1. Clone the repo and cd ai_knowledge_coach
  2. Install dependencies: pip install -r requirements.txt
  3. Configure environment variables in .env (Azure OpenAI Credentials)
  4. Run the app: streamlit run app.py
Technical Highlights
  • Modular Architecture: Separated the application into distinct layers (app.py for UI, ai_engine.py for LLM logic, pdf_generator.py for exports) to ensure a production-ready and maintainable codebase.
  • Robust Parsing Utility: Implemented a resilient custom parsing utility in utils.py that reliably extracts the structured JSON components (Summary, Insights, Interview Questions, Quiz) from the LLM's text output, gracefully stripping out markdown fences or hallucinated preamble.
  • Dynamic PDF Generation: Built a custom formatting engine using fpdf that seamlessly converts the varying lengths of AI-generated insights and quizzes into a neatly paginated, downloadable PDF asset directly within the web session.
Challenges & Learnings

A significant challenge was ensuring the LLM reliably outputted all four distinct learning components (Summary, Insights, Interview Prep, Quiz) in a strict, parseable format every time without truncating or inventing new JSON keys. I learned how to craft highly specific, zero-shot system prompts that enforce rigid JSON schemas, and paired this with a resilient Python regular expression parser to strip away any unexpected markdown artifacts. Additionally, building this with GitHub Copilot significantly accelerated development, teaching me how to effectively prompt an AI pair programmer to generate modular, rather than monolithic, code structures.

Contact Information

https://www.linkedin.com/in/krishna-dwivedi-b36904240/

Country/Region

India

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

This is a project submission rather than a contribution task, and it does not identify a change to make. The submission mentions app.py, ai_engine.py, pdf_generator.py, utils.py, and README.md; read those files and the repository first, but a concrete definition of done is not provided.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, github, python, streamlit
Domain
ai, web-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
10/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.