RSSAmplifier

Blog

andrelandgraf.dev

Hey there! I write about all things web development. Check out my blog posts.

andrelandgraf.devRSS feed ↗16 posts

Latest posts

Two types of agents

Today's agents fall into two categories. There are declarative agents that live inside your app and sandbox agents that live inside a computer. If you're building an agent, it's important to understand which approach you should use.

Sensible use of MCP today

In this blog post, we discuss the Model Context Protocol (MCP), prompt injection attacks, problems with LLM agency, and how to use MCP in production.

Syntax highlighting with Markdoc and Shiki in Remix

Markdown is a great tool for working with formatted text content, including code blocks. In this blog post, we set up Shiki for syntax highlighting with Markdoc and Remix.

Use Markdoc to render Markdown content in Remix

Markdown is a great tool for working with formatted text content. In this blog post, we use Markdoc to parse and render Markdown content in Remix. We will cover styling, frontmatter, and how to render Markdown content as custom React components.

Working with QR codes in Remix

Learn how to easily generate QR codes in your Remix app to share URLs and other information with your users.

Use Terraform for your app's Cloudflare Workers

Terraform is an infrastructure as code tool that enables you to provision and manage infrastructure. Let's get started using Terraform to provision Cloudflare infrastructure for your projects.

How to work with TypeScript unknown and any

TypeScript is a powerful tool to help us write better code. However, it can sometimes also get in the way, especially on the boundaries of the application where we interact with untyped data. In this article, I want to show you how to quickly narrow types and validate unknown and any.

Website Reviews - A beginner's guide

In this short article, I provide a simple step-by-step process to reviewing websites. Follow this guide to give constructive feedback to your peers or find ways to improve your own web app.

A business case for today's full stack web frameworks

Today's full stack web frameworks like Next.js and Remix provide application developers with primitives, conventions, and levers to build more performant web apps. This blog post outlines a business case for going full stack from a client-only SPA architecture.

Taking advantage of the full stack of the web platform

In this article, I explain in more detail what I mean by the full stack of the web platform. I make a case that having access to both the client and server runtime matters.

My experience learning React, web standards, and Remix

In this blog post, I am sharing my story of learning React, web standards, and Remix, and answer the question why I actively try to use less React.

A process for solving React take-home exercises

Take-home can be intimidating, especially for those new to the job market. In this blog post, I want to guide you through my process for solving React take-home exercises.

Why you shouldn't use useActionData

In this post, I want to discuss why I believe you should carefully consider whether to use action data.

Different dimensions of Remix deploy targets

Remix is very flexible when it comes to deploying your application. In this article, we will explore the different dimensions of Remix deployment targets.

Why Remix is not a React framework but a full stack web framework

It's intuitive to compare Remix to Next.js and Gatsby and to treat it as a React framework. In this post, I want to summarize my own thoughts about why I believe that Remix deserves the title of a full stack web framework.

How to integrate Markdown content with syntax highlighting in Remix.run

Markdown is a powerful tool for writing and publishing content. There are different ways of integrating Markdown into your Remix application. In this blog post, I want to show you how my own Markdown setup works.