> pocketbase

Assists with building backends using PocketBase, a single-binary backend with embedded SQLite, real-time subscriptions, file storage, and authentication. Use when creating MVPs, prototyping APIs, configuring collections, or setting up auth flows. Trigger words: pocketbase, backend, sqlite, real-time, single binary, collections, pb.

fetch
$curl "https://skillshub.wtf/TerminalSkills/skills/pocketbase?format=md"
SKILL.mdpocketbase

PocketBase

Overview

PocketBase is an open-source backend packaged as a single binary, providing an embedded SQLite database, real-time subscriptions, file storage, and built-in authentication. It auto-generates REST APIs for collections and is ideal for shipping full-stack applications with minimal infrastructure complexity.

Instructions

  • When defining collections, choose the appropriate type: base collections for standard CRUD, auth collections for user management with email/password and OAuth2, and view collections for read-only SQL-backed queries.
  • When building client integrations, use the JavaScript/TypeScript SDK with pb.collection("name").getList() for queries, .subscribe() for real-time updates, and expand parameter for fetching related data in a single request.
  • When configuring permissions, set API rules on every collection (listRule, viewRule, createRule, updateRule, deleteRule) using filter syntax like @request.auth.id = user.id for row-level security.
  • When extending functionality, add JavaScript hooks (onBeforeCreateRecord, onAfterUpdateRecord) for business logic, custom routes with routerAdd(), and cron jobs with cronAdd().
  • When deploying, run the single binary with ./pocketbase serve, mount pb_data/ as a Docker volume, and use Caddy or Nginx for HTTPS termination.
  • When backing up, copy the pb_data/ directory or use the built-in backup API before running migrations.
  • When scaling, note that SQLite handles approximately 50,000 concurrent reads; for write-heavy workloads exceeding 100K daily active users, consider PostgreSQL alternatives.

Examples

Example 1: Build an MVP backend with authentication

User request: "Set up a PocketBase backend with user auth and a posts collection"

Actions:

  1. Create an auth collection for users with email/password and Google OAuth2
  2. Create a posts collection with title, body, and relation to users
  3. Set API rules: anyone can list/view, only authenticated authors can create/update/delete their own posts
  4. Configure the JS SDK for client-side CRUD and auth flows

Output: A fully functional backend with auth, permissions, and auto-generated REST API.

Example 2: Add real-time features

User request: "Enable live updates for a chat application using PocketBase"

Actions:

  1. Create a messages collection with text, sender relation, and room field
  2. Set up SSE subscription with pb.collection("messages").subscribe("*", callback)
  3. Configure API rules for room-based access control
  4. Handle client auto-reconnect with exponential backoff

Output: A real-time chat backend with live message delivery via Server-Sent Events.

Guidelines

  • Always set API rules on every collection; default is admin-only (null), which breaks client access.
  • Use expand parameter instead of multiple API calls for related data.
  • Validate inputs in hooks (onBeforeCreateRecord) for business logic beyond schema validation.
  • Back up pb_data/ before migrations since SQLite migrations are irreversible.
  • Use view collections for complex queries instead of client-side joins.
  • Keep hooks lightweight; heavy processing should run async or in cron jobs.

> related_skills --same-repo

> zustand

You are an expert in Zustand, the small, fast, and scalable state management library for React. You help developers manage global state without boilerplate using Zustand's hook-based stores, selectors for performance, middleware (persist, devtools, immer), computed values, and async actions — replacing Redux complexity with a simple, un-opinionated API in under 1KB.

> zoho

Integrate and automate Zoho products. Use when a user asks to work with Zoho CRM, Zoho Books, Zoho Desk, Zoho Projects, Zoho Mail, or Zoho Creator, build custom integrations via Zoho APIs, automate workflows with Deluge scripting, sync data between Zoho apps and external systems, manage leads and deals, automate invoicing, build custom Zoho Creator apps, set up webhooks, or manage Zoho organization settings. Covers Zoho CRM, Books, Desk, Projects, Creator, and cross-product integrations.

> zod

You are an expert in Zod, the TypeScript-first schema declaration and validation library. You help developers define schemas that validate data at runtime AND infer TypeScript types at compile time — eliminating the need to write types and validators separately. Used for API input validation, form validation, environment variables, config files, and any data boundary.

> zipkin

Deploy and configure Zipkin for distributed tracing and request flow visualization. Use when a user needs to set up trace collection, instrument Java/Spring or other services with Zipkin, analyze service dependencies, or configure storage backends for trace data.

┌ stats

installs/wk0
░░░░░░░░░░
github stars17
███░░░░░░░
first seenMar 17, 2026
└────────────

┌ repo

TerminalSkills/skills
by TerminalSkills
└────────────

┌ tags

└────────────