Tag: tutorial

46 articles

· rag / pgvector

How to build a RAG pipeline with pgvector and Drizzle ORM

Step-by-step tutorial: store embeddings in Neon Postgres, query with cosine similarity via Drizzle ORM, and wire up GPT-4o for answers — all in TypeScript.

· nextjs / better-auth

How to add Better Auth to a Next.js app — step by step

A practical walkthrough of installing Better Auth v1.6.14 with Drizzle ORM, Neon Postgres, and GitHub OAuth on Next.js 15 App Router — including every failure mode worth knowing.

· cloudflare / cloudflare-workers

How to Set Up Cloudflare Workers AI: Step-by-Step Guide

Run inference at the edge with Workers AI: scaffold a Worker, bind the AI, call models, stream SSE, generate images. Includes pricing and rate limits.

· resend / react-email

How to send transactional emails with Resend and React Email

Step-by-step: install Resend and React Email, write a typed template, send from a Next.js route, and preview locally. Covers the React Email 6 import change.

· typescript / turso

How to set up Turso (libSQL) in a TypeScript project

Set up Turso (libSQL) in TypeScript from scratch: install @libsql/client, run CRUD, add Drizzle ORM, and manage local dev — with the gotchas most guides miss.

· nextjs / llm

How to stream LLM responses in Next.js with the Vercel AI SDK

Stream LLM responses token-by-token in Next.js using AI SDK v6. Covers route handler, client hook, and the two Vercel timeout traps most tutorials skip.

· ai-tools / vercel-ai-sdk

How to use the Vercel AI SDK — streaming, tools, and agents

AI SDK 6 gives you a single API across 20+ providers, typed streaming, and a ToolLoopAgent class for multi-step agentic loops. Here is how to use it.

· nextjs / cloudflare

How to deploy Next.js to Cloudflare Workers (2026)

Deploy Next.js to Cloudflare Workers: @opennextjs/cloudflare adapter, wrangler.jsonc config, 330 edge cities in 90 seconds, and GitHub Actions CI/CD pipeline.

· ai-tools / cursor

How to choose an AI coding tool in 2026: practical framework

Four dimensions decide: agent autonomy, IDE lock-in, privacy/self-host, and pricing. Work through them in order and you get a clear answer in under ten minutes.

· cursor / mcp

How to Build MCP Tools That Work Inside Cursor

Step-by-step guide to building a custom MCP server in TypeScript and wiring it into Cursor Pro. Covers tool registration, restart quirks, and the five gotchas that waste an afternoon.

· cursor / ai

Cursor Rules Explained: Formats, Modes, and What to Avoid

Cursor rules bake your project conventions into the AI. Covers both file formats, all four activation modes, and the silent mistakes that break them.

· mcp / claude-code

How to build and use MCP servers with Claude Code (2026)

MCP is the fastest way to give Claude Code project-specific context without pasting files every session. Here is a working recipe from scaffold to running tool.

· paddle / billing

How to Set Up Paddle Billing for a Small SaaS (2026)

Step-by-step: add Paddle Billing to a Node.js/TypeScript SaaS. Covers product catalog, Paddle.js v2 overlay checkout, webhook verification, and customer portal.

· cloudflare / cloudflare-pages

How to cache static assets the right way on Cloudflare

Set Cache-Control for fingerprinted assets, index.html, and service workers on Cloudflare. Verify with cf-cache-status; six BYPASS gotchas covered.

· fly-io / heroku

Migrate from Heroku to Fly.io: Step-by-Step Guide (2026)

Move your Heroku app to Fly.io for ~$4/mo. Step-by-step guide with CLI commands for Postgres import, Redis, file storage, secrets, and scheduled tasks.

· redux / zustand

How to Migrate from Redux to Zustand: Step-by-Step Guide

Zustand v5 weighs 0.5 KB gzip against Redux Toolkit + react-redux combined ~17 KB, and removes the Provider ceremony. This guide covers the full migration: install, mirror slices, swap components, and handle the middleware and DevTools gotchas.

· stripe / nextjs

How to set up Stripe Checkout in a Next.js app (2026)

Step-by-step: add Stripe Hosted or Embedded Checkout to a Next.js 15 App Router project. Covers Checkout Sessions, webhooks, and the req.text() gotcha.

· astro / pagefind

How to add full-text search to an Astro site with Pagefind

Add zero-infra full-text search to any Astro static site using Pagefind 1.5: install, build integration, Component UI, data attributes, CSP, and deploy.

· monorepo / pnpm

How to Set Up Changesets for Automated Monorepo Releases

Set up @changesets/cli v2.31.0 in a pnpm + Turborepo monorepo — from your first changeset to a fully automated GitHub Actions publish pipeline.

· postgres / pgvector

How to Set Up Vector Search with pgvector in Postgres

Add semantic search to Postgres with pgvector v0.8.2 — install the extension, create a vector column, generate OpenAI embeddings, and build an HNSW index.

· testing / vitest

How to configure Vitest in a Turborepo monorepo

Vitest 4.x dropped the workspace option — it is projects now. This guide covers two approaches (per-package caching and Vitest Projects root), shared config, turbo.json wiring, and coverage aggregation.

· astro / mdx

How to Add MDX to Astro 5 Content Collections

Step-by-step guide to installing @astrojs/mdx and wiring it into Astro 5 Content Layer API — typed frontmatter, component imports, and every pitfall documented.

· jsr / deno

How to Publish a TypeScript Package on JSR: Full Guide

Step-by-step guide to publishing a TypeScript package on JSR: configure jsr.json, fix slow types, publish via Deno or GitHub Actions, and maximize your score.

· cloudflare / workers

How to rate-limit Cloudflare Workers without Redis

Native rate limiting for Cloudflare Workers — no Redis needed. Rate Limiting API for abuse, KV for daily quotas, Durable Objects for exact billing counters.

· astro / mdx

How to write good Astro frontmatter (and validate it)

Add a Zod schema to src/content.config.ts. Frontmatter fields get TypeScript types and build-time validation — no extra dependencies, no runtime surprises.

· cloudflare / cloudflare-workers

How to Deploy a Cloudflare Worker with D1 + Stripe

Build a Stripe webhook handler on Cloudflare Workers with D1. Covers scaffold, wrangler.toml, Drizzle migrations, the raw-body gotcha, and production deploy.

· product-hunt / tutorial

How to launch on Product Hunt as a solo dev (2026)

Comments beat upvotes, coordinated spikes get penalized, and famous Hunters no longer matter. Mechanics-first Product Hunt playbook for solo devs in 2026.

· cloudflare / aws

How to Migrate from AWS to Cloudflare in 2026: The Complete Playbook

Move Lambda, S3, API Gateway, RDS, and SQS to Cloudflare Workers, R2, D1, and Queues — step-by-step with real wrangler.toml snippets, before/after code diffs, and an honest when-not-to section.

· npm / typescript

How to publish an npm package the right way in 2026

Dual ESM/CJS with tsup, a proper exports map, changesets for versioning, and provenance — the complete 2026 workflow that the top-ranking tutorials still miss.

· astro / rss

How to Build an RSS Feed in Astro with @astrojs/rss

Add an RSS feed to your Astro site using @astrojs/rss — covers content collections, rssSchema, auto-discovery, full-post content, and W3C validation.

· trpc / nextjs

How to set up tRPC with Next.js App Router (2026)

tRPC v11 works with Next.js 15 App Router. Covers fetchRequestHandler, SSR prefetch, the QueryClient pattern, and five gotchas that catch first-timers.

· astro / i18n

How to build a multilingual Astro site (EN + VI)

Build an EN+VI Astro 5 site using built-in i18n routing: content collections, locale pages, language switcher, hreflang, and Cloudflare Workers deploy.

· drizzle / postgres

How to Set Up Drizzle ORM with Postgres and pgvector

Set up Drizzle ORM with Postgres 16 and pgvector. Covers the CREATE EXTENSION step most guides skip and the cosine distance pattern that uses the HNSW index.

· bun / typescript

How to write a CLI in TypeScript with Bun and Commander

Bun + Commander is the fastest path to a TypeScript CLI: native TS execution, no build step, subcommands, and a standalone binary. Tutorial with working code.

· monorepo / pnpm

How to Set Up a pnpm + Turborepo Monorepo from Scratch

Correctly bootstrap a pnpm + Turborepo monorepo from scratch with real task caching — v2 "tasks" key, not the deprecated "pipeline" most tutorials use.

· astro / cloudflare

How to Deploy an Astro Site on Cloudflare Pages: Setup Guide

Cloudflare Pages deploys Astro for free with unlimited bandwidth. Step-by-step: adapter install, monorepo root directory fix, env vars, and custom domain.

· biome / eslint

How to migrate from ESLint and Prettier to Biome in 2026

Two commands migrate most of your config automatically. Covers install, rule mapping, editor setup, CI, uninstall — and gaps that block some teams.

· testing / vitest

How to Migrate from Jest to Vitest: Step-by-Step Guide

Vitest runs 28× faster than Jest in watch mode. This guide covers the full migration: install, configure globals, handle config files, and fix six gotchas.

· llm / fine-tuning

How to fine-tune a small LLM in 2026 (LoRA on a laptop)

Fine-tune Llama 3.1 8B with QLoRA on a consumer GPU — pinned Unsloth install, exact training config, GGUF export to Ollama, and eight failure modes.

· nextjs / app-router

How to migrate from Next.js Pages Router to App Router

Migrate Next.js Pages Router to App Router on 16.2.6: root layout, data fetching, Route Handlers, metadata API, and 8 real gotchas with fixes.

· vite / webpack

How to migrate from Webpack to Vite (real project)

Step-by-step Webpack 5 → Vite 8 migration on a TypeScript + React project: before/after configs, env var renaming, CJS interop fixes, and six concrete gotchas.

· multica / self-hosting

How to Self-Host Multica: Setup Guide for AI Agent Teams

Self-host Multica v0.3.1 with three Docker containers and one make command. Quick-start, production hardening, and cost breakdown for AI agent teams.

· claude-code / monorepo

How to set up Claude Code for a monorepo

A hands-on guide to CLAUDE.md hierarchy, per-package scoping, --add-dir, parallel sessions with worktrees, and the gotchas that will bite you first. Verified on Claude Code v2.1.141, May 2026.

· ollama / lm-studio

Ollama vs LM Studio on Mac — which survives daily use?

LM Studio wins on throughput and memory. Ollama wins on time-to-first-token and CLI setup. Here is when each choice makes sense on Apple Silicon.

· claude-code / skills

How to write a Claude Code skill (and ship it to a team)

Claude Code skills are on-demand Markdown guides that extend what the model does. Write one, install it, invoke it — start to finish in 20 minutes.

· mcp / claude-code

How to build an MCP server for Claude Code

Scaffold a TypeScript MCP server with [email protected], register it with Claude Code, and implement two real NWS weather tools — no API key, done in 30 minutes.