TypeScript


🚀 Leveling Up Your AI Agents: A Story-Driven Guide to MCP Tools, Resources, Prompts, and Logging

AI copilots are getting smarter. They can chat, reason, and even follow complex instructions. But if you want your AI to actually do something useful, like trigger a function, fetch some data, or keep a log of what happened, you need more than just prompts. You need structure and you need context. You need something like the Model Context Protocol (MCP). In this post, I’ll walk you through MCP’s four core capabilities (tools, resources, prompts, logging) using a fun story about Contextia, an AI copilot assisting Commander Alex on their ship. I put this together because when I first started […]


AI Repo of the Week: Generative AI for Beginners with JavaScript

A fun, hands-on learning journey that teaches JavaScript developers how to build AI-powered apps using generative AI and large language models. Introduction Ready to explore the fascinating world of Generative AI using your JavaScript skills? This week’s featured repository, Generative AI for Beginners with JavaScript, is your launchpad into the future of application development. Whether you’re just starting out or looking to expand your AI toolbox, this open-source GitHub resource offers a rich, hands-on journey. It includes interactive lessons, quizzes, and even time-travel storytelling featuring historical legends like Leonardo da Vinci and Ada Lovelace. Each chapter combines narrative-driven learning with practical […]


Building a Marvel MCP Server with External APIs

Image from the Marvel Developers API Summary Introduction to Model Context Protocol (MCP) Ever wish your AI assistant could tap into external APIs, fetch live data, or interact with tools beyond its built-in knowledge? That’s exactly what the Model Context Protocol (MCP) enables. MCP is a standardized way for AI systems to discover available tools, send them inputs, and get back results in a consistent format. It’s a powerful way to extend what AI can do—especially for things like making API calls or querying databases, which models can’t do on their own. Think of it as the Rosetta Stone between […]


Using RealTime AI – Part 1: Getting Started with the Fundamentals of Low-Latency AI Magic

Have you ever wished your AI could keep up with you—like, actually match your pace? You know, the kind of speed where you toss out a question and get a snappy reply before you’ve even blinked twice? Enter Realtime AI—a total game-changer that I’ll have to admit had me grinning like I had just unlocked a secret superpower the first time I got it running. In this first installment of the RealTime AI series, I’ll break down what Realtime AI is for you, why it’s awesome, and provide you with a first look at the RealTime AI App—a fun demo […]


AI Time-Travel: Your JavaScript Quest Begins!

Generative AI for Beginners – A JavaScript Adventure. Code with Legends, Conquer the Future! Imagine sipping espresso with Leonardo da Vinci, debating AI over sketches of flying machines. Or quizzing Ada Lovelace on code in her misty mansion. The Generative AI for Beginners – A JavaScript Adventure course (free on GitHub!) blends time-traveling thrills with hands-on JavaScript AI concepts. No time machine required—just curiosity and a keyboard! Generative AI is the secret sauce behind next-level chatbots, content wizards, and modern apps. For JavaScript devs, it’s your ticket to crafting smarter and more productive apps for users. This course? It’s your […]


TypeChat: Define Schemas for Your OpenAI Prompts 

Have you ever spent hours carefully crafting the perfect OpenAI prompt, trying to coax your AI model into generating just the right response? As an AI developer, I know that struggle all too well especially when it comes to returning structured JSON. What if there was an easier way to retrieve JSON responses from OpenAI and Azure OpenAI models? Meet TypeChat – an open source project from Microsoft that aims to make working with AI more efficient across different types of AI models by using TypeScript types (called “schemas”). Created by Anders Hejlsberg and team, TypeChat allows you to define […]


Solving the Puzzle of Real Time Collaboration using the Fluid Framework

I had the opportunity to talk at ng-conf (one of my favorite conferences of all time!) about how the Fluid Framework can be used to add real-time collaboration into your custom apps. In the talk I cover: Check out the video from the talk below or visit https://fluidframework.com to access: The Angular sample I show in the talk can be found at https://github.com/DanWahlin/angular-todo-list-fluid.


Migrating a Local Node Script to Azure Functions using VS Code

I have a work project that uses GitHub APIs to access stats about specific repos (views, clones, forks, etc.). It was pretty straightforward to get the project running locally using GitHub’s Octokit REST package and with a little work I had a working Node script that could be run to retrieve the data and display it in the console. That was a good start, but the script functionality needed to be consumed by others in my organization as well as by services such as Power Automate. What to do? While I could easily convert the script into a Node/Express API […]


Add Real-Time Video, Voice, and Chat to Your App with Azure Communication Services

How many times have you tried to contact a company’s customer service department only to waste time looking up the phone number or trying to find the *right* phone number to ask a simple question? Once you finally get through to someone you typically end up switching between the phone app and the company’s website or app to pass along required information to the customer service representative. It can be frustrating. Wouldn’t it be easier to open the company’s website or app and make the call directly from the screen that has all of your information already available? For example, […]

ACS Featured Image - Using Audio and Video

New Pluralsight Course: Angular Architecture and Best Practices

I’m excited to announce the release of my next course on Pluralsight titled Angular Architecture and Best Practices! The goal of this course is to provide you with solid, proven guidance to plan out your Angular application architecture, address various challenges that typically come up, and ultimately create a more maintainable and flexible application. Here are a few questions this course will help you answer: Is there one “right” way to architect and build an Angular application? Short answer – NO! What are some key concepts I should consider when planning my application architecture? Is there any type of planning […]