A hands-on learning resource demonstrating how to build production-ready GenAI applications through three progressive demos.
π Based on the RVA.js Presentation: View Slides
This repository teaches you how to:
- Transform UIs with natural language interfaces
- Process documents using multimodal AI (vision + text)
- Personalize content at scale with RAG and orchestration
- Design production systems with graceful degradation
- Choose the right patterns (simple vs orchestrated approaches)
Concept: Replace complex UI with natural language
What You'll Build:
- Natural language to structured query parser
- Zod schemas for type-safe validation
- Prompt engineering for safety and clarification
- Discriminated unions for response handling
Key Pattern: Single LLM call with structured output
Time: 2-3 hours | Difficulty: Beginner
Concept: Process any document format with vision AI
What You'll Build:
- Claude Vision integration for image parsing
- Format-agnostic document extraction
- Partial success handling
- Simple vs orchestrated comparison
Key Pattern: Multimodal AI with graceful degradation
Time: 2-3 hours | Difficulty: Intermediate
Concept: Generate hyper-personalized content using orchestration
What You'll Build:
- Multi-step LangChain workflow
- RAG (Retrieval-Augmented Generation)
- Persona-based content generation
- Optional feature handling (meme generation)
Key Pattern: Full orchestration pipeline
Time: 4-5 hours | Difficulty: Advanced
- Node.js 18+ installed
- API Access to either:
- Azure AI Foundry (recommended - provides access to GPT-4, Claude, and more)
- Direct APIs: OpenAI + Anthropic
- See INFRASTRUCTURE.md for detailed setup guide
- Basic knowledge of:
- TypeScript/JavaScript
- Async/await patterns
- REST APIs
-
Clone the repository:
git clone https://github.com/ncapito/rvajs-genai-presentation.git cd rvajs-genai-presentation -
Choose a demo and follow its LEARN.md:
-
Set up cloud infrastructure - See INFRASTRUCTURE.md for:
- Azure AI Foundry setup (recommended)
- Direct API alternatives (OpenAI + Anthropic)
- Model deployment instructions
- Cost estimates and free tier options
-
Start building! Each demo has step-by-step exercises
For Beginners:
Demo 1 β Demo 2 β Demo 3
For Experienced Developers:
Read all LEARN.md files β Pick the demo matching your interests
| Demo | Core Concepts |
|---|---|
| Demo 1 | Structured outputs, Zod schemas, Prompt engineering, Safety rules |
| Demo 2 | Multimodal AI, Vision prompting, Partial results, Architecture decisions |
| Demo 3 | LangChain orchestration, RAG patterns, Persona mapping, Production patterns |
Demo 1: Single LLM Call
User Input β LLM β Structured Output
Demo 2: Simple or Orchestrated
Image β Vision AI β Structured Data
OR
Image β Analyze β Extract β Structure
Demo 3: Full Orchestration
User β Analyze β RAG Retrieve β Style β Generate β Enhance
| Pattern | Use When | Example |
|---|---|---|
| Single Call | Task is straightforward, one-step | Demo 1 query parsing |
| Simple Multi-Step | Need clear stages, basic workflow | Demo 2 receipt validation |
| Full Orchestration | Complex logic, reusable components | Demo 3 personalization |
- LangChain.js - AI application framework
- Zod - Schema validation for type safety
- Azure AI Foundry - Access to GPT-4, Claude, FLUX-1.1-pro, and more
- Anthropic Claude - Vision AI capabilities (direct API)
- Angular - Frontend framework
- Node.js + Express - Backend API with SSE for real-time progress
- TypeScript - Type-safe development
rvajs-genai-presentation/
βββ README.md # This file
βββ INFRASTRUCTURE.md # Cloud setup, API configuration
βββ CONTRIBUTING.md # Development setup guide
βββ CLAUDE.md # AI assistant guidance
β
βββ demo1-tasks/ # Natural language querying
β βββ LEARN.md # Learning guide with exercises
β βββ backend/ # Node.js API
β β βββ .env.example # Environment template
β βββ frontend/ # Angular UI
β βββ docs/
β βββ ARCHITECTURE.md # Technical details
β
βββ demo2-receipts/ # Receipt parsing with vision
β βββ LEARN.md # Learning guide
β βββ backend/ # Vision AI integration
β β βββ .env.example # Environment template
β βββ frontend/ # Upload UI
β βββ docs/
β βββ ARCHITECTURE-*.md # Technical details
β
βββ demo3-email-generator/ # Email personalization
βββ LEARN.md # Learning guide
βββ backend/ # LangChain orchestration
β βββ .env.example # Environment template
βββ frontend/ # Email display
By completing all three demos, you'll be able to:
- β Implement structured LLM outputs with Zod
- β Build safe prompts with validation and error handling
- β Integrate vision AI for document processing
- β Create multi-step LangChain workflows
- β Implement RAG for dynamic context
- β Design graceful degradation strategies
- β Choose between simple vs orchestrated approaches
- β Evaluate when to use RAG vs fine-tuning
- β Balance cost, latency, and accuracy
- β Handle partial successes gracefully
- β Build production-ready error handling
- β Simplify complex UIs with natural language
- β Process unstructured documents at scale
- β Generate personalized content dynamically
- β Build end-to-end GenAI applications
- β Deploy with confidence using fallback strategies
Each demo contrasts traditional approaches with GenAI solutions:
| Aspect | Traditional | GenAI |
|---|---|---|
| UI Complexity | 100+ lines of filters | Single text input |
| Document Parsing | Brittle regex, text-only | Vision AI, any format |
| Content Generation | Static templates | Hyper-personalized |
| Maintenance | Manual updates for changes | Prompt adjustments |
| User Experience | Rigid, frustrating | Natural, intuitive |
- Start Simple - Single LLM call before orchestration
- Schema First - Define structure, constrain outputs
- Safety Always - Validate, sanitize, limit scope
- Degrade Gracefully - Fallbacks for optional features
- User-Centric - Natural interfaces over complex UIs
- Combine Patterns - Use multiple demos in one application
- Add Observability - Integrate LangSmith tracing
- Optimize Costs - Cache results, use cheaper models where appropriate
- Scale Up - Add database, queueing, rate limiting
- Deploy - Containerize and deploy to cloud
- Project 1: Build a document Q&A system (Demo 2 + RAG)
- Project 2: Create a smart dashboard (Demo 1 + Demo 3)
- Project 3: Design a multi-agent workflow (All demos combined)
- π Presentation Slides - Original RVA.js presentation
- INFRASTRUCTURE.md - Cloud setup, API configuration, cost estimates
- CONTRIBUTING.md - Development setup, contribution guidelines
- Check LEARN.md - Each demo has troubleshooting sections
- Review Reference Code - Complete implementations are provided
- Read Architecture Docs - Deep dives in
docs/folders - Open an Issue - Describe what you're stuck on
Contributions welcome! See CONTRIBUTING.md for:
- How to set up your development environment
- Code style guidelines
- How to submit improvements
- How to report issues
This project is provided as-is for educational purposes.
Built to teach practical GenAI application development through hands-on examples.
Key Technologies:
- LangChain.js for orchestration
- Azure AI Foundry for GPT-4, embeddings, and image generation
- Anthropic Claude for vision AI
- Zod for type-safe schemas
- SSE for real-time progress updates
- Check Prerequisites above
- Read CONTRIBUTING.md for setup
- Begin with Demo 1
- Build something amazing! π
Questions? Open an issue or check the LEARN.md files in each demo folder.
Want to contribute? See CONTRIBUTING.md for guidelines.