All posts.
Every EasySpawn article, newest first — deploying AI-built apps, Claude Code, databases, security, and the infrastructure underneath.
422 posts · page 17 of 18
Claude Code Subagents: When to Split the Work (and When Not To)
Subagents give Claude Code a second context window: a helper that does a noisy job — running tests, searching a codebase, reading logs — and hands back only the summary. How they work, how to write your own, and the tasks where they help versus the ones where they just add cost.
Claude Code Slash Commands: The Ones Worth Knowing on Day One
Claude Code has dozens of built-in slash commands. The dozen a beginner actually needs — /init, /clear, /compact, /context, /usage, /model, /resume, /rewind, /plan, /diff, /permissions, /help — what each does, when to use it, and how to make your own.
Claude Code Skills: Turn the Prompts You Keep Retyping Into Commands
If you've pasted the same instructions into Claude Code more than twice, it should be a skill. How skills work, how they differ from CLAUDE.md, how to write one with arguments and live context, and four skills worth having in almost any project.
Claude Code Settings Explained: settings.json Scopes, Precedence, and a Team Setup
Claude Code reads settings from managed, command-line, local, project, and user files. Where each lives, which wins, how permission lists merge, what belongs in the committed project file vs your personal one, and a practical team configuration with permissions, hooks, and environment variables.
Claude Code Plan Mode: Make It Think Before It Types
The most expensive Claude Code mistakes happen in the first five minutes, when it confidently heads in the wrong direction. Plan mode makes it research and propose before touching anything. How to use it, how to review a plan properly, and when it's overkill.
Claude Code Permission Modes Explained: Manual, Accept Edits, Plan, and Auto
Claude Code can ask before every action, auto-approve edits, only plan, or run with a safety classifier reviewing each step. What each permission mode does, which one you start in, how to switch with Shift+Tab, allow and deny rules, and which mode to use when.
Connecting MCP Servers to Claude Code: Setup, Scopes, and the Security Question
MCP servers let Claude Code talk to your issue tracker, database, error monitoring, and docs. Adding one is a single command. Choosing which ones to trust is the harder part. How to connect them, where the configuration lives, and how to keep a useful integration from becoming a data leak.
Using Claude Code on a Large Codebase
On a big repository, Claude Code's quality depends on what's in its context. How to structure CLAUDE.md files across a monorepo, point it at the right code, delegate exploration to subagents, keep sessions focused, give it fast feedback loops, and plan multi-step changes that span many files.
Claude Code Hooks: Rules the Agent Can't Forget
CLAUDE.md tells Claude Code what you'd like. Hooks make it happen, every time — blocking edits to protected files, formatting after every change, refusing to stop while tests fail. Five practical hooks, how they work, and the honest limits of what a hook can enforce.
Running Claude Code Headless: claude -p in Scripts, Cron, and CI
Add -p and Claude Code stops being a chat and becomes a command: pipe input in, get text or JSON out, exit with a status code. How print mode works, how to control what it's allowed to do and spend, authentication for CI, and where headless runs still need somewhere to live.
How to Use Claude Code From Your Phone: Every Option Compared
You can check on — and steer — a Claude Code session from your phone in at least four different ways. They differ in where the code runs, what happens when your laptop sleeps, and how much you can actually do on a small screen.
Claude Code --dangerously-skip-permissions: When It's Safe, and What to Use Instead
An agent that stops to ask permission can't work while you're away. An agent that never asks can delete things. How Claude Code's permission modes and allow/deny rules work, when skipping prompts is reasonable, and what has to be true of the environment first.
Claude Code Checkpoints: How /rewind Works and What It Can't Undo
Press Esc twice and Claude Code rewinds its file edits to any earlier prompt. It's a genuine safety net — with holes shaped exactly like the mistakes that hurt most: shell commands, database changes, and anything outside the working tree. What's covered, what isn't, and what to use for the rest.
How to Choose an AI App Builder: Seven Questions to Ask First
Lovable, Bolt, v0, Replit, and a dozen others all promise an app from a prompt. Features change monthly, so instead of a ranking, here are the seven questions that decide whether a builder suits your project — and what to check before you commit months of work to one.
What Is Caching? A Beginner's Guide to Making Apps Faster
Caching means keeping a copy of something so you don't have to fetch or compute it again. The caches between your user and your database — browser, CDN, server, database — what each is good for, why 'hard refresh' fixes things, and the one hard problem: stale data.
Preventing Cache Stampedes: Coalescing, Locks, Early Expiration, and Stale Serving
When a hot cache key expires, hundreds of requests miss at once and all hit the database. How stampedes happen, and the fixes: singleflight coalescing, distributed locks, probabilistic early recomputation (XFetch), stale-while-revalidate, TTL jitter, and negative caching.
Browser Developer Tools for Beginners: The Five Tabs That Matter
Every browser has a built-in toolkit that shows what your app is really doing. How to open DevTools, and how to use the Elements, Console, Network, Application, and device-mode views to find bugs and give your AI tool something useful to work with.
Which Database Should an AI-Built App Use?
The AI will happily pick a database for you — sometimes a file on disk that disappears on the next deploy. What the choice actually is, why Postgres is the right default for almost every app, and the mistakes that lose data.
Backups for Beginners: How to Not Lose Your App's Data
Your code is in Git. Your users' data isn't. What actually needs backing up, the 3-2-1 rule, why a backup you've never restored doesn't count, how often to back up, and a simple backup plan for a small app — including what to do before letting an AI agent near your database.
Your App Needs Background Jobs. Here's the Simplest Way to Add Them.
Sending emails, processing uploads, calling slow AI models, and nightly cleanups don't belong in the middle of a web request. What background jobs and scheduled tasks are, the simplest reliable way to add them — often your existing Postgres database — and the mistakes that make jobs fail silently.
Authentication vs Authorization: What's the Difference?
Authentication checks who you are. Authorization checks what you're allowed to do. Mixing them up is behind many of the worst security holes in AI-built apps. A plain-English explanation with the hotel analogy, the mistakes to look for, and a five-minute test.
API Pagination: Offset vs Cursor (Keyset) and When Each Breaks
Returning every row works until it doesn't. How offset pagination works and why it gets slow and skips rows, how cursor (keyset) pagination fixes both, how to encode cursors and index for them, tie-breakers, total counts, and a response shape clients can rely on.
Anatomy of a URL: What Every Part of a Web Address Means
https://app.example.com:8080/orders/42?sort=new#details has seven parts, and each one matters when you build an app. The scheme, subdomain, domain, port, path, query string, and fragment, explained — plus URL encoding and why some characters turn into %20.
Analytics for Beginners: What to Measure in Your First App
You launched. Is anyone using it? What web analytics and product analytics are, the handful of numbers that matter for a new app, privacy-friendly tools that don't need a cookie banner, how to track events, and how not to drown in dashboards.