AI SDK v5 Crash Course
Course description
100% TypeScript. 100% Production-ready. 0% hype. Only real tools and experience. Integration with LLM has finally reached a new level - now it's truly worth your time. Just a year ago, development for LLM was real chaos: hacks, unstable APIs, outdated interfaces, and endless reworks. Now everything is different - thanks to the AI SDK.
Read more about the course
AI SDK v5 changes the game:
- Write once - works with any LLM-provider.
- Modern patterns and tools instead of homemade solutions.
- Production-ready, secure, and elegant TypeScript code.
If you've been waiting for stable APIs, production-ready tools, and clear architectural patterns - the moment has come.
In this intensive course, you will learn how to add LLM-based features to your TypeScript applications.
The course includes 89 short videos and 57 practical exercises across 10 modules. Everything is as practical, dynamic, and concise as possible.
You will master:
- Basic principles of LLM (tokens, context, windows, etc.)
- Key architectural patterns: agents, workflows, tool-calling, and much more
- Production tools: observability, logging, error handling
- Eval-Driven Development - an approach to combat model hallucinations
- And, of course, everything about how to effectively use AI SDK v5
Projects you will create during the course:
- Chat title generator with a dataset for eval
- Workflow for generating and enhancing messages in Slack
- Guardrail to protect your application
- Request router capable of sending simple tasks to cheaper models
- Exploratory agent for information searching on the web
All videos are short (2–3 minutes), exercises are easy yet comprehensive - you can learn even with a busy schedule.
AI SDK v5 is not just a library. It's a unified engineering platform that saves months of development, simplifies maintenance, and makes your AI applications as reliable as the rest of your code.
More than 3.5 million downloads per week - and it's not by chance:
- Fully open source (Apache 2.0)
- Supports all major frameworks and LLMs
- Unified interface for all models and providers
- Easy integration with OpenTelemetry, Langfuse, Braintrust, and other tools
- Works everywhere: Node, Deno, Bun
AI SDK v5 makes LLM application development as modern as everything else in TypeScript. It's time to join in - and start creating smart, production-ready features.
Watch Online
All Course Lessons (89)
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | 001 What is the AI SDK_ Demo | 02:01 | |
| 2 | 002 How To Take This Course | 02:27 | |
| 3 | 003 Choosing Your Model | 01:51 | |
| 4 | 004 Generating Text | 00:53 | |
| 5 | 005 Generating Text Solution | 00:55 | |
| 6 | 006 Streaming Text To The Terminal | 01:07 | |
| 7 | 007 Stream Text to Terminal Solution | 00:33 | |
| 8 | 008 UI Message Streams | 01:34 | |
| 9 | 009 Streaming To A UI | 02:36 | |
| 10 | 010 Stream Text to UI Solution | 02:03 | |
| 11 | 011 System Prompts | 01:26 | |
| 12 | 012 Passing Images and Files | 01:24 | |
| 13 | 013 Passing Images and Files Solution | 01:04 | |
| 14 | 014 Streaming Objects | 01:31 | |
| 15 | 015 Streaming Objects Solution | 01:49 | |
| 16 | 016 Tokens | 01:36 | |
| 17 | 017 Tracking Token Usage | 00:34 | |
| 18 | 018 Usage Solution | 00:54 | |
| 19 | 019 Representing Data As Tokens | 01:34 | |
| 20 | 020 Context Window | 01:51 | |
| 21 | 021 Prompt Caching | 02:16 | |
| 22 | 022 Calling Tools | 02:13 | |
| 23 | 023 Tool Calling Solution | 01:12 | |
| 24 | 024 Message Parts | 03:14 | |
| 25 | 025 Showing Tools in the Frontend | 02:32 | |
| 26 | 026 Showing Tools in the Frontend Solution | 02:10 | |
| 27 | 027 Calling MCP Servers via stdio | 02:10 | |
| 28 | 028 MCP via stdio Solution | 01:25 | |
| 29 | 029 Calling MCP Servers via HTTP | 00:38 | |
| 30 | 030 Waiting For Streams To Finish | 04:11 | |
| 31 | 031 Passing Chat ID's To The API | 01:58 | |
| 32 | 032 Pass Chat ID to the API Solution | 01:23 | |
| 33 | 033 Persisting Chat Messages | 03:05 | |
| 34 | 034 Persistence Solution | 01:44 | |
| 35 | 035 Persisting Messages In Postgres | 03:44 | |
| 36 | 036 The Template | 03:16 | |
| 37 | 037 Basic Prompting | 00:55 | |
| 38 | 038 Basic Prompting Solution | 01:02 | |
| 39 | 039 Exemplars | 00:42 | |
| 40 | 040 Exemplars Solution | 01:09 | |
| 41 | 041 Retrieval | 01:23 | |
| 42 | 042 Retrieval Solution | 01:31 | |
| 43 | 043 Chain of Thought | 01:58 | |
| 44 | 044 Chain of Thought Solution | 02:04 | |
| 45 | 045 Evalite Basics | 02:13 | |
| 46 | 046 Evalite Basics Solution | 01:10 | |
| 47 | 047 Deterministic Evals | 01:33 | |
| 48 | 048 Deterministic Eval Solution | 01:27 | |
| 49 | 049 LLM-as-a-judge Evals | 03:29 | |
| 50 | 050 LLM as a Judge Solution | 01:09 | |
| 51 | 051 Dataset Management | 01:55 | |
| 52 | 052 Chat Title Generation | 01:56 | |
| 53 | 053 Chat Title Generation Solution | 01:20 | |
| 54 | 054 How Do I Know My Dataset Is Good_ | 02:23 | |
| 55 | 055 Langfuse Basics | 02:56 | |
| 56 | 056 Langfuse Basics Solution | 01:52 | |
| 57 | 057 Custom Data Parts | 02:52 | |
| 58 | 058 Custom Data Parts Solution | 01:37 | |
| 59 | 059 Streaming Objects To Custom Data Parts | 01:21 | |
| 60 | 060 Custom Data Parts with Stream Object Solution | 02:01 | |
| 61 | 061 Message Metadata | 01:30 | |
| 62 | 062 Message Metadata Solution | 01:10 | |
| 63 | 063 Error Handling | 01:54 | |
| 64 | 064 Error Handling Solution | 00:55 | |
| 65 | 065 Building A Workflow | 01:39 | |
| 66 | 066 Workflow Solution | 01:16 | |
| 67 | 067 Streaming Custom Data to the Frontend | 02:19 | |
| 68 | 068 Streaming Custom Data to the Frontend Solution | 01:39 | |
| 69 | 069 Creating Your Own Loop | 02:14 | |
| 70 | 070 Creating Your Own Loop Solution | 01:31 | |
| 71 | 071 Breaking the Loop Early | 02:20 | |
| 72 | 072 Breaking the Loop Early Solution | 02:09 | |
| 73 | 073 Guardrails | 02:38 | |
| 74 | 074 Guardrails Solution | 02:43 | |
| 75 | 075 Model Router | 01:34 | |
| 76 | 076 Model Router Solution | 02:03 | |
| 77 | 077 Comparing Multiple Outputs | 03:39 | |
| 78 | 078 Comparing Multiple Outputs Solution | 01:44 | |
| 79 | 079 Research Workflow | 02:55 | |
| 80 | 080 Research Workflow Solution | 03:14 | |
| 81 | 081 UI Messages vs Model Messages | 01:12 | |
| 82 | 082 Defining Tools | 01:38 | |
| 83 | 083 consumeStream | 01:57 | |
| 84 | 084 Custom Data Parts - | 01:21 | |
| 85 | 085 Streaming Custom Data Parts To The Frontend | 01:12 | |
| 86 | 086 Using ID's In Custom Data Parts | 01:17 | |
| 87 | 087 Message Metadata - | 02:14 | |
| 88 | 088 Streaming Text Parts By Hand | 01:17 | |
| 89 | 089 Start and Finish Parts | 03:11 |
Unlock unlimited learning
Get instant access to all 88 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionComments
0 commentsWant to join the conversation?
Sign in to commentSimilar courses
Agentic AI Programming for Python Course
Uber Clone - Typescript, NodeJS, GraphQL, React, Apollo
AI Engineering Course
AI Design with Ideogram