7-day hands-on LLM engineering course with AI-powered Python tutor. Built with React, OpenAI & Anthropic APIs.
0
stars
10
commits
TypeScript
primary language
Dec 27, 2025
updated
An interactive learning platform for mastering Large Language Model engineering through hands-on projects, featuring an AI-powered Python tutor.
# Clone the repository
git clone https://github.com/alubin/llm-course-app.git
cd llm-course-app
# Install dependencies
npm install
# Start development server
npm run dev
Open http://localhost:5173 in your browser.
npm run build
npm run preview
The Python Primer includes an AI-powered tutor that can answer any Python questions. To use it:
That's it! Vercel auto-detects Vite projects.
llm-course-app/
βββ public/
β βββ favicon.svg
βββ src/
β βββ components/
β β βββ Dashboard.jsx # Home page with course overview
β β βββ Roadmap.jsx # Visual course roadmap
β β βββ CoursePage.jsx # Individual day content display
β β βββ PythonPrimer.jsx # Python reference + AI tutor
β β βββ ApiKeyModal.jsx # API key configuration modal
β β βββ TutorResults.jsx # AI response display
β β βββ SearchHistory.jsx # Search history sidebar
β β βββ ProviderBadge.jsx # OpenAI/Anthropic badges
β βββ data/
β β βββ courseRoadmap.js # Course structure metadata
β β βββ day1Content.js # Day 1: CLI Assistant
β β βββ day2Content.js # Day 2: Chatbot Memory
β β βββ day3Content.js # Day 3: RAG System
β β βββ day4Content.js # Day 4: REST API (Java)
β β βββ day5Content.js # Day 5: Fine-tuning
β β βββ day6Content.js # Day 6: AI Agents
β β βββ day7Content.js # Day 7: Data Pipeline
β β βββ pythonPrimer.js # Python primer content
β βββ hooks/
β β βββ useProgress.js # Progress tracking hook
β β βββ useApiKey.js # API key management hook
β β βββ ProgressContext.jsx # Global progress context
β β βββ SearchHistoryContext.jsx # Search history context
β βββ services/
β β βββ pythonTutor.js # OpenAI/Anthropic integration
β βββ App.jsx
β βββ main.jsx
β βββ index.css
βββ index.html
βββ package.json
βββ vite.config.js
βββ tailwind.config.js
βββ vercel.json
βββ README.md
| Day | Topic | Tech Stack | Status |
|---|---|---|---|
| 1 | LLM Fundamentals + CLI Assistant | Python, OpenAI API | β Available |
| 2 | Chatbot with Memory & Context | Python, FastAPI, SQLAlchemy | β Available |
| 3 | RAG: Chat with Documents | Python, ChromaDB, Gradio | β Available |
| 4 | AI-Powered REST API | Java, Spring Boot, Spring AI | β Available |
| 5 | Transformers & Fine-tuning | Python, Hugging Face, LoRA | β Available |
| 6 | AI Agents with Tool Use | Python, Function Calling | β Available |
| 7 | Data Pipeline with AI Enrichment | Python, Pandas, AI Classification | β Available |
Each day includes:
Total: 41-57 hours of hands-on learning
src/data/ (e.g., day8Content.js)sections arrayCoursePage.jsx and add to contentMapcourseRoadmap.js with the new day's metadataApp.jsxThe AI tutor service is in src/services/pythonTutor.js. You can:
JSON_SCHEMAsrc/index.csstailwind.config.js (custom surface and brand colors)Note: When using
dangerouslyAllowBrowserflag with AI SDKs, API keys are exposed in browser. Only use for development/learning. Production apps should proxy API calls through a backend.
MIT License β Feel free to use this for your own learning!
Contributions welcome! Areas for improvement:
Please open an issue or PR.
Built with β€οΈ for aspiring LLM engineers
π€ Generated with Claude Code
10 commits
TypeScript
98.8%
7-day hands-on LLM engineering course with AI-powered Python tutor. Built with React, OpenAI & Anthropic APIs.
0
stars
10
commits
TypeScript
primary language
Dec 27, 2025
updated
An interactive learning platform for mastering Large Language Model engineering through hands-on projects, featuring an AI-powered Python tutor.
# Clone the repository
git clone https://github.com/alubin/llm-course-app.git
cd llm-course-app
# Install dependencies
npm install
# Start development server
npm run dev
Open http://localhost:5173 in your browser.
npm run build
npm run preview
The Python Primer includes an AI-powered tutor that can answer any Python questions. To use it:
That's it! Vercel auto-detects Vite projects.
llm-course-app/
βββ public/
β βββ favicon.svg
βββ src/
β βββ components/
β β βββ Dashboard.jsx # Home page with course overview
β β βββ Roadmap.jsx # Visual course roadmap
β β βββ CoursePage.jsx # Individual day content display
β β βββ PythonPrimer.jsx # Python reference + AI tutor
β β βββ ApiKeyModal.jsx # API key configuration modal
β β βββ TutorResults.jsx # AI response display
β β βββ SearchHistory.jsx # Search history sidebar
β β βββ ProviderBadge.jsx # OpenAI/Anthropic badges
β βββ data/
β β βββ courseRoadmap.js # Course structure metadata
β β βββ day1Content.js # Day 1: CLI Assistant
β β βββ day2Content.js # Day 2: Chatbot Memory
β β βββ day3Content.js # Day 3: RAG System
β β βββ day4Content.js # Day 4: REST API (Java)
β β βββ day5Content.js # Day 5: Fine-tuning
β β βββ day6Content.js # Day 6: AI Agents
β β βββ day7Content.js # Day 7: Data Pipeline
β β βββ pythonPrimer.js # Python primer content
β βββ hooks/
β β βββ useProgress.js # Progress tracking hook
β β βββ useApiKey.js # API key management hook
β β βββ ProgressContext.jsx # Global progress context
β β βββ SearchHistoryContext.jsx # Search history context
β βββ services/
β β βββ pythonTutor.js # OpenAI/Anthropic integration
β βββ App.jsx
β βββ main.jsx
β βββ index.css
βββ index.html
βββ package.json
βββ vite.config.js
βββ tailwind.config.js
βββ vercel.json
βββ README.md
| Day | Topic | Tech Stack | Status |
|---|---|---|---|
| 1 | LLM Fundamentals + CLI Assistant | Python, OpenAI API | β Available |
| 2 | Chatbot with Memory & Context | Python, FastAPI, SQLAlchemy | β Available |
| 3 | RAG: Chat with Documents | Python, ChromaDB, Gradio | β Available |
| 4 | AI-Powered REST API | Java, Spring Boot, Spring AI | β Available |
| 5 | Transformers & Fine-tuning | Python, Hugging Face, LoRA | β Available |
| 6 | AI Agents with Tool Use | Python, Function Calling | β Available |
| 7 | Data Pipeline with AI Enrichment | Python, Pandas, AI Classification | β Available |
Each day includes:
Total: 41-57 hours of hands-on learning
src/data/ (e.g., day8Content.js)sections arrayCoursePage.jsx and add to contentMapcourseRoadmap.js with the new day's metadataApp.jsxThe AI tutor service is in src/services/pythonTutor.js. You can:
JSON_SCHEMAsrc/index.csstailwind.config.js (custom surface and brand colors)Note: When using
dangerouslyAllowBrowserflag with AI SDKs, API keys are exposed in browser. Only use for development/learning. Production apps should proxy API calls through a backend.
MIT License β Feel free to use this for your own learning!
Contributions welcome! Areas for improvement:
Please open an issue or PR.
Built with β€οΈ for aspiring LLM engineers
π€ Generated with Claude Code
10 commits
TypeScript
98.8%