Build an Anycast CDN
Build an Anycast CDN with BIRD and NGINX: get a /24, cache HTTPS, test failover, and add regional Anycast pools with GeoDNS.
Read the note ↗THE ADIOS NOTEBOOK
Engineering decisions, practical guides, and lessons from building Adios. Find something you can put to work.
Subscribe via RSSSTART HERE / EDITOR’S PICK
Build an Anycast CDN with BIRD and NGINX: get a /24, cache HTTPS, test failover, and add regional Anycast pools with GeoDNS.
Read the story ↗THE NOTEBOOK
Showing 1–32 of 32 articles
Build an Anycast CDN with BIRD and NGINX: get a /24, cache HTTPS, test failover, and add regional Anycast pools with GeoDNS.
Read the note ↗Deploy Next.js as a Node server with standalone builds, systemd, NGINX, streaming, shared-cache decisions, and safe release rollouts.
Read the note ↗A deploy command crosses several boundaries: source packaging, build, runtime start, readiness, promotion, and public routing. Each can fail differently.
Read the note ↗A private dependency needs a credential during the build, but it does not belong in source code. A deploy key connects the repository without exposing your personal SSH key.
Read the note ↗Configure Next.js SEO with server rendering, metadata, canonical URLs, sitemaps, JSON-LD, Core Web Vitals, and production release checks.
Read the note ↗Use the Next.js 16 Metadata API for title templates, canonical URLs, dynamic metadata, Open Graph cards, and data-backed App Router pages.
Read the note ↗Design and deploy programmatic SEO pages with Next.js dynamic routes, unique content, static parameters, caching, sitemaps, and safe invalidation.
Read the note ↗Add safe, accurate JSON-LD to Next.js App Router pages with Article, Product, SoftwareApplication, and BreadcrumbList examples.
Read the note ↗Audit your Next.js website for crawling, indexing, internal linking, content, and performance issues. Build an evidence-based SEO action plan.
Read the note ↗Build a production Next.js 16 SaaS with authentication, Postgres, subscriptions, background work, secure configuration, testing, and deployment.
Read the note ↗Design tenant resolution, database ownership, authorization, cache keys, jobs, custom domains, and deployment for a multi-tenant Next.js SaaS.
Read the note ↗Build GitHub sign-in, database sessions, and workspace roles with Better Auth and PostgreSQL. Protect pages, Server Actions, and API routes.
Read the note ↗Build Stripe subscription billing in Next.js with server-created Checkout Sessions, verified webhooks, local entitlements, and idempotent processing.
Read the note ↗Design durable jobs, verified webhooks, retries, idempotency, deadlines, failure states, and observable background work around a Next.js SaaS.
Read the note ↗Build a production Next.js 16 store with products, variants, carts, server-owned pricing, Stripe Checkout, inventory, SEO, and deployment.
Read the note ↗Build an indexable Next.js product page with canonical variant URLs, dynamic metadata, Product JSON-LD, optimized images, and accurate availability.
Read the note ↗Implement anonymous and customer carts, server-owned prices, Stripe Checkout, signed webhooks, idempotent orders, and inventory validation in Next.js.
Read the note ↗Prevent overselling with transactional inventory, reservations, idempotent webhooks, Next.js cache tags, targeted invalidation, and concurrency tests.
Read the note ↗Build useful Next.js category filters while controlling canonical URLs, parameter normalization, pagination, crawlable combinations, and empty results.
Read the note ↗Build a production Next.js website with the App Router, Server Components, explicit caching, secure mutations, SEO, testing, and deployment.
Read the note ↗A practical Next.js 16 cheat sheet with 75 commands, file conventions, Server Component patterns, cache APIs, SEO fields, security checks, and deploy tips.
Read the note ↗Claude can help write the first version. The production work is keeping that code attached to source, config, previews, logs, and a deployment path.
Read the note ↗Sandboxes are good for experiments. Source-backed AI workspaces are for code that needs Git history, previews, logs, secrets, and deployment.
Read the note ↗AI-generated code still needs a contract: build it, start it, configure it, check it, and route traffic to the exact version you reviewed.
Read the note ↗A hosted MCP server needs the same discipline as an API: auth, input validation, timeouts, secrets, health checks, logs, and deploy history.
Read the note ↗Fourteen current edge locations bring requests onto the Adios network. Here is what happens there—and what still happens in a compute region.
Read the note ↗AI can generate an API quickly, but the platform still needs a truthful health endpoint before it should send production traffic.
Read the note ↗Environment names can live in a manifest. Credentials should not. Secret references preserve that boundary from local work through production.
Read the note ↗A production starter does not need dozens of abstractions. It needs a clear process boundary, predictable configuration, and enough signals to operate safely.
Read the note ↗The template catalog now reaches beyond a handful of app starters. It covers web apps, APIs, databases, caches, and queues in one place.
Read the note ↗A small adios.yaml keeps build and runtime decisions close to the code, whether the source starts in a local folder or a shared workspace.
Read the note ↗The best starter is usually the one that matches your team, data, and operating constraints—not the framework with the loudest launch week.
Read the note ↗