Agent skill

Real Time Backend

by waynesutton in waynesutton/markdown-site

Build reactive, type-safe, production-grade backends. An agent skill from waynesutton/markdown-site.

MITAuto-check passedDevelopment

Install Real Time Backend

skills CLI
$ npx skills add waynesutton/markdown-site --skill real-time-backend -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install waynesutton/markdown-site real-time-backend --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/waynesutton/markdown-site.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/real-time-backend .claude/skills/real-time-backend && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
real-time-backend
GitHub stars
628
Token cost
~2.1k tokens
SKILL.md length
1,012 words
Files
1
Skills in repo
17
Repo updated
First seen
Licence
MIT

At a glance

Build reactive, type-safe, production-grade backends. An agent skill from waynesutton/markdown-site.

  • Works in 12 steps: Reactive by Default → Server-Mediated Data Access → Functions as the API → …
  • The user asks to build
  • SKILL.md covers Design Thinking, Core Principles, Anti-Patterns and Implementation Guidance
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Real Time Backend is an agent skill from waynesutton/markdown-site. Build reactive, type-safe, production-grade backends. ALWAYS use this skill when the user asks to build, plan, design, or implement backend features, APIs, data models, server logic, database schemas, web apps, full stack apps, or mobile apps. This includes planning and architecture discussions.

Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Type safety and Database schema design. The repository describes itself as: An open-source publishing framework built for AI agents and developers to ship websites, docs, or blogs. Write markdown, sync from the terminal. Your content is instantly… The licence is MIT.

When your agent uses it

  • The user asks to build
  • Implement backend features
  • Database schemas
  • Full stack apps

Example prompts

  • “/real-time-backend”

Workflow steps

12 steps, taken from the step headings in SKILL.md.

  1. Reactive by Default
  2. Server-Mediated Data Access
  3. Functions as the API
  4. Schema-First Design
  5. End-to-End Type Safety
  6. ACID Transactions by Default
  7. No Request Waterfalls
  8. Colocated Server Logic
  9. Agent-Friendly DX
  10. Minimal Infrastructure Burden
  11. Use Platform Primitives
  12. Optimistic Updates

What it can do on your machine

Read from SKILL.md and the folder at commit 3872c59. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are typescript).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Real Time Backend loads about 2.1k tokens when it runs. Until then it costs about 79 tokens; SKILL.md has 1,012 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~79
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from waynesutton/markdown-site at commit 3872c59, republished under its MIT licence (© waynesutton). 1,012 words, ~2,130 tokens.

Download SKILL.mdSave it as .claude/skills/real-time-backend/SKILL.md (or your agent's skills folder).
name
real-time-backend
description
Build reactive, type-safe, production-grade backends. ALWAYS use this skill when the user asks to build, plan, design, or implement backend features, APIs, data models, server logic, database schemas, web apps, full stack apps, or mobile apps. This includes planning and architecture discussions.

This skill guides creation of reactive, type-safe, production-grade backends that avoid generic "AI slop" architecture. Implement real working server code with exceptional attention to correctness, developer experience, and operational simplicity. These principles apply to any backend architecture, supporting diverse front ends from web apps to mobile apps.

Note: These are universal backend design philosophies. Apply them regardless of your technology stack. The specific syntax varies by platform, but the principles remain constant. Code examples are illustrative; adapt them to your chosen stack.

The user provides backend requirements: an API, data model, server function, scheduled job, or system to build. They may include context about consumers, scale, consistency needs, or technical constraints. Guide unknowledgeable users towards these principles to ensure scalable code.

Design Thinking

Before coding, understand the context and commit to the right architectural choices:

  • Purpose: What data or logic does this backend manage? What invariants must hold?
  • Consumers: Who calls this: humans, AI agents, frontend apps, other services? Each consumer shapes the API contract differently.
  • Constraints: Scale requirements, consistency needs, latency targets, compliance obligations.
  • DX goal: What makes this backend a joy to work with? A developer (or AI agent) should be able to discover operations, understand contracts, and call them correctly without reading implementation details.

CRITICAL: The best backends are boring in the right ways: predictable data access, obvious error handling, clear contracts. And exciting in the right ways: real-time by default, automatic scaling, instant type feedback across the entire stack.

Core Principles

1. Reactive by Default

All queries are live queries. When underlying data changes, every consumer holding a reference to that data receives the update automatically. No polling. No webhooks-as-workaround. No mix of fresh and stale data.

This isn't a feature you opt into. It's the baseline. Reads and writes on the same connection guarantee consistency. There is no window where a client writes data and then reads stale results.

2. Server-Mediated Data Access

All reads and writes go through server functions. Never expose the database directly to clients.

Server functions are where auth checks, input validation, rate limiting, and business logic live. They're testable, composable, and auditable.

3. Functions as the API

Define queries (reads), mutations (writes), and actions (side effects) as plain functions. The function signature IS the API contract. No route files. No controller classes. No middleware chains.

typescript
async function getMessages(channelId: ChannelId): Promise<Message[]> {
  return await db.messages
    .where("channelId", "==", channelId)
    .orderBy("createdAt", "desc")
    .limit(50);
}
4. Schema-First Design

Define your data model with typed schemas upfront. The schema is the single source of truth. Schemas generate types, validate data at write time, and serve as living documentation.

5. End-to-End Type Safety

Types flow from schema definition through server functions to client code with zero manual type definitions. Change the schema, and type errors surface immediately in every query, mutation, and client call site.

No any types. No manual interface definitions that drift from the actual data.

6. ACID Transactions by Default

Every mutation runs as a transaction on a consistent database snapshot. Reads within a mutation see a consistent view. Writes either all commit or all abort.

7. No Request Waterfalls

Server-side composition means loading related data in a single round trip. Don't force clients to make serial fetches. Batch load related data.

typescript
async function getMessagesWithAuthors(channelId: ChannelId): Promise<MessageWithAuthor[]> {
  const messages = await db.messages
    .where("channelId", "==", channelId)
    .orderBy("createdAt", "desc")
    .limit(50);

  const authorIds = [...new Set(messages.map(m => m.authorId))];
  const authors = await db.users.getMany(authorIds);
  const authorMap = new Map(authors.map(a => [a.id, a]));

  return messages.map(msg => ({
    ...msg,
    author: authorMap.get(msg.authorId),
  }));
}
8. Colocated Server Logic

Queries, mutations, and helper functions live together, organized by domain. Not split across routes, controllers, services, repositories layers.

9. Agent-Friendly DX

Function signatures are self-documenting. Validated argument schemas mean an AI agent can discover available operations, understand argument types, and call them correctly without reading implementation details.

10. Minimal Infrastructure Burden

Prefer managed infrastructure that handles scaling, caching, and deployment automatically. Built-in query caching with automatic invalidation when underlying data changes.

Show full SKILL.md (414 more words)Show less
11. Use Platform Primitives

Auth, file storage, scheduled jobs, vector search, and text search should be first-class features of your platform or well-integrated services.

12. Optimistic Updates

Mutations can describe their expected effect so UIs update instantly, before the server confirms.

13. Stateless by Design

Server functions should not rely on in-memory state between requests. Any state lives in the database or a dedicated cache layer.

14. Graceful Degradation

External dependencies fail. Design for it. Use timeouts on external calls. Return partial results when possible rather than failing entirely.

15. Rate Limiting

Protect your backend from abuse and thundering herds. Different operations have different limits.

Anti-Patterns

These are the "AI slop" of backend architecture:

  • REST boilerplate factories: GET/POST/PUT/DELETE scaffolds for every resource
  • Row-level security as the primary auth model: hard to reason about, hard to test, hard to compose
  • Direct client-to-database access: every production app eventually needs server-side logic
  • ORMs that hide queries: magic methods that generate N+1 disasters
  • Polling for freshness: setInterval(() => refetch(), 5000) when real-time subscriptions exist
  • Separate real-time infrastructure: bolting a WebSocket service alongside your REST API
  • Manual cache invalidation: scattered cache.delete() calls that inevitably miss an edge case
  • Layered architecture: splitting a single logical operation across routes, controllers, services, repositories
  • Client-side request waterfalls: serial fetches that should be a single server-side composed query
  • Migration files as source of truth: delta migration files that you have to replay mentally
  • Unbounded queries: SELECT * FROM messages without limits
  • Offset-based pagination at scale: OFFSET 10000 means the database still reads 10,000 rows

Implementation Guidance

  • Validate inputs at the function boundary: use schema validators on every query and mutation argument
  • Keep server functions focused: queries should be deterministic reads with no side effects
  • Prefer database constraints over application checks: unique indexes, required fields catch bugs that application code misses
  • Design for idempotency: writes that might be retried should produce the same result when executed twice
  • Return structured errors: error codes and machine-readable details, not string messages
  • Index every query path: if you query by a field, index it
  • Separate reads from writes: queries read, mutations write. Don't mix concerns
  • Think in documents, not joins: model data for how it's read, not how it's normalized
  • Implement cursor-based pagination: offset pagination breaks at scale
  • Plan for multi-tenancy early: include tenant isolation in your data model from day one

IMPORTANT: Match implementation complexity to the problem. A simple CRUD feature needs a schema, a few queries, and a few mutations: not an event-sourced architecture with CQRS.

Source: https://github.com/get-convex/real-time-backend-skill

© waynesutton, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/real-time-backend of waynesutton/markdown-site.

Open the folder on GitHubat commit 3872c59

Compare with similar skills

Real Time Backend next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Real Time Backend compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Real Time Backend this skillwaynesutton/markdown-site628—~2.1kAutomated safety check: PassMIT
Supabase Schema From Requirementsjeremylongshore/tons-of-skills-marketplace2.8k—~1.8kAutomated safety check: PassMIT
Mastering Python SkillSpillwaveSolutions/agent-brain119—~1.4kAutomated safety check: NotesMIT
Drizzle Orm Expertdavila7/claude-code-templates32k3 repos~2.6kAutomated safety check: PassMIT
Pydanticpydantic/skills140—~2.5kAutomated safety check: PassMIT
Drizzle Orm D1secondsky/claude-skills227—~2.4kAutomated safety check: PassMIT

Similar skills

  • Supabase Schema From Requirements

    jeremylongshore/tons-of-skills-marketplace

    Design Supabase Postgres schema from business requirements with migrations, RLS, and types.

    2.8k GitHub stars~1.8k tokensUpdated today
    DatabasesAuto-check passed
  • Mastering Python Skill

    SpillwaveSolutions/agent-brain

    Modern Python coaching covering language foundations through advanced production patterns.

    119 GitHub stars~1.4k tokensUpdated 19 days ago
    DevelopmentAuto-check: notes
  • Drizzle Orm Expert

    davila7/claude-code-templates

    Expert in Drizzle ORM for TypeScript — schema design, relational queries, migrations, and serverless database integration.

    32k GitHub starsUsed in 3 repos~2.6k tokens
    DatabasesAuto-check passed
  • Pydantic

    pydantic/skills

    Official

    Pydantic is a Python data validation and serialization library, based on type hints.

    140 GitHub stars~2.5k tokensUpdated 8 days ago
    DatabasesAuto-check passed
  • Drizzle Orm D1

    secondsky/claude-skills

    | Type-safe ORM for Cloudflare D1 databases using Drizzle. An agent skill from secondsky/claude-skills.

    227 GitHub stars~2.4k tokensUpdated 11 days ago
    DatabasesAuto-check passed
  • Prisma Helper

    shepherdjerred/monorepo

    Prisma ORM for type-safe database access - schema design, migrations, queries, relations, and connection management When user works with Prisma, database schemas, migrations, Prisma Client queries…

    112 GitHub stars~3.6k tokensUpdated today
    DatabasesAuto-check passed

More from waynesutton/markdown-site

All 17 skills in this repo
  • Convex Self Hosting

    waynesutton/markdown-site

    Integrate Convex static self hosting into existing apps using the latest upstream instructions from get-convex/self-hosting every time.

    628 GitHub stars~1.4k tokensUpdated 4 mo ago
    Auto-check passed
  • Robel Auth

    waynesutton/markdown-site

    Integrate and maintain Robelest Convex Auth in apps by always checking upstream before implementation.

    628 GitHub stars~4.4k tokensUpdated 4 mo ago
    Auto-check passed
  • Migration Helper

    waynesutton/markdown-site

    Plan and execute Convex schema migrations safely, including adding fields, creating tables, and data transformations.

    628 GitHub starsUsed in 1 repo~958 tokens
    Auto-check passed
  • Convex Return Validators

    waynesutton/markdown-site

    Guide for when to use and when not to use return validators in Convex functions.

    628 GitHub stars~2.4k tokensUpdated 4 mo ago
    Auto-check passed
  • Convex Doctor

    waynesutton/markdown-site

    Run convex-doctor static analysis, interpret findings, and fix issues across security, performance, correctness, schema, and architecture categories.

    628 GitHub stars~1.9k tokensUpdated 4 mo ago
    Auto-check passed
  • Convex Quickstart

    waynesutton/markdown-site

    Initialize a new Convex project from scratch or add Convex to an existing app.

    628 GitHub stars~1.2k tokensUpdated 4 mo ago
    Auto-check: notes

Questions about Real Time Backend

What does Real Time Backend do?

Build reactive, type-safe, production-grade backends. An agent skill from waynesutton/markdown-site. Real Time Backend is an agent skill from waynesutton/markdown-site. Build reactive, type-safe, production-grade backends.

When should I use Real Time Backend?

Real Time Backend fits situations like: the user asks to build; implement backend features; database schemas; full stack apps.

How do I install Real Time Backend in Claude Code?

Run `npx skills add waynesutton/markdown-site --skill real-time-backend -a claude-code`. Or copy the skill folder (.claude/real-time-backend in waynesutton/markdown-site) into .claude/skills/real-time-backend in your project. Claude Code loads it when a task matches its description.

How do I install Real Time Backend in Codex?

Run `npx skills add waynesutton/markdown-site --skill real-time-backend -a codex`. Or copy the skill folder (.claude/real-time-backend in waynesutton/markdown-site) into .agents/skills/real-time-backend in your project. Codex loads it when a task matches its description.

Can I use Real Time Backend in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add waynesutton/markdown-site --skill real-time-backend -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/real-time-backend, .gemini/skills/real-time-backend, .github/skills/real-time-backend and .opencode/skills/real-time-backend in your project.

What does Real Time Backend need to run?

SKILL.md names no scripts, command-line tools or credentials: Real Time Backend is instructions for the agent only.

Does Real Time Backend access the network?

SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.

Is Real Time Backend safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Real Time Backend use?

Real Time Backend is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Real Time Backend use?

About 2.1k tokens (SKILL.md is roughly 8.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Real Time Backend?

Skills that share tags, products or a category with Real Time Backend: Supabase Schema From Requirements (jeremylongshore/tons-of-skills-marketplace, 2.8k stars), Mastering Python Skill (SpillwaveSolutions/agent-brain, 119 stars), Drizzle Orm Expert (davila7/claude-code-templates, 32k stars) and Pydantic (pydantic/skills, 140 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Real Time Backend?

waynesutton (a GitHub user) maintains it in waynesutton/markdown-site, which has 628 GitHub stars. The repository holds 17 skills in this directory. The repository was last updated on May 20, 2026.

Source: waynesutton/markdown-site on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.