Skip to content

ncapito/rvajs-genai-presentation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

12 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

GenAI Application Development - Learning Repository

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

🎯 What You'll Learn

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)

πŸ“š Demo Overview

Demo 1: Natural Language Task Querying

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

Start Learning β†’


Demo 2: Receipt Parsing with Vision

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

Start Learning β†’


Demo 3: Email Personalization with RAG

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

Start Learning β†’


πŸš€ Quick Start

Prerequisites

  • 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

Installation

  1. Clone the repository:

    git clone https://github.com/ncapito/rvajs-genai-presentation.git
    cd rvajs-genai-presentation
  2. Choose a demo and follow its LEARN.md:

    • Demo 1 - Start here if you're new to GenAI
    • Demo 2 - Learn vision AI
    • Demo 3 - Master orchestration
  3. 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
  4. Start building! Each demo has step-by-step exercises

πŸ“– Learning Path

Recommended Order

For Beginners:

Demo 1 β†’ Demo 2 β†’ Demo 3

For Experienced Developers:

Read all LEARN.md files β†’ Pick the demo matching your interests

Concepts by Demo

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

πŸ—οΈ Architecture Patterns

Pattern Progression

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

When to Use What

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

πŸŽ“ Key Technologies

  • 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

πŸ“‚ Repository Structure

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

🎯 Learning Objectives

By completing all three demos, you'll be able to:

Technical Skills

  • βœ… 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

Design Decisions

  • βœ… 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

Real-World Applications

  • βœ… 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

πŸ’‘ Philosophy

Before & After Mindset

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

Core Principles

  1. Start Simple - Single LLM call before orchestration
  2. Schema First - Define structure, constrain outputs
  3. Safety Always - Validate, sanitize, limit scope
  4. Degrade Gracefully - Fallbacks for optional features
  5. User-Centric - Natural interfaces over complex UIs

πŸš€ Going Further

Next Steps After Completing Demos

  1. Combine Patterns - Use multiple demos in one application
  2. Add Observability - Integrate LangSmith tracing
  3. Optimize Costs - Cache results, use cheaper models where appropriate
  4. Scale Up - Add database, queueing, rate limiting
  5. Deploy - Containerize and deploy to cloud

Challenge Projects

  • 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)

πŸ“š Additional Resources

This Repository

Official Documentation

Learning Materials

Community

πŸ†˜ Getting Help

  1. Check LEARN.md - Each demo has troubleshooting sections
  2. Review Reference Code - Complete implementations are provided
  3. Read Architecture Docs - Deep dives in docs/ folders
  4. Open an Issue - Describe what you're stuck on

🀝 Contributing

Contributions welcome! See CONTRIBUTING.md for:

  • How to set up your development environment
  • Code style guidelines
  • How to submit improvements
  • How to report issues

πŸ“ License

This project is provided as-is for educational purposes.

⭐ Acknowledgments

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

🎬 Ready to Start?

  1. Check Prerequisites above
  2. Read CONTRIBUTING.md for setup
  3. Begin with Demo 1
  4. 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.

About

No description, website, or topics provided.

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors