Use when creating or editing an admin list/table page in web/src, wiring any paged query, or implementing a paginated repository/endpoint in api/. Covers hook choice (usePagedQuery vs useClientPagination), PageQuery type conventions, the backend paging contract, and the DataTable min-h-0 scroll chain.
Use when running any Go command or tool — go test/build/vet, wire, sqlc, golang-migrate — in an environment where local Go may be unavailable. Decides the execution path (local vs container) and remembers the user's choice so it is asked only once.
Use when writing or placing frontend code — creating a util/hook/component, deciding its file location, extracting shared code across features, or writing TS/TSX doc comments (TSDoc format, what belongs in a header comment vs inline).
Use when adding a new backend module or frontend feature to a DDD-layered codebase — creating domain entities and repository interfaces, wiring a service through the DI container, registering HTTP handlers and routes, or scaffolding a feature directory with api/model/ui sublayers.
Use when designing, adding, removing, or wiring RBAC permission points — deciding action granularity (coarse manage vs fine-grained verbs), seeding a new permission, gating routes or admin UI, or retiring a feature's permissions.
Use whenever writing or editing Tailwind CSS classes in this project (web/). Enforces Tailwind CSS v4 canonical class forms. This includes both the project convention that 4px-multiple spacing values use bare numeric utilities and the canonical forms suggested by Tailwind CSS IntelliSense's suggestCanonicalClasses…
Repository instructions for Violet, a full-stack blog platform organized as a monorepo, meaning one repository containing several related applications. They describe its Go backend, React frontend, architecture boundaries, and Makefile-based workflow.
A documentation responsibility map for a software repository. It connects types of changes, such as new modules or deployment updates, to the documents that must be updated.
Issues for this repo live on GitHub Issues as the primary tracker. When gh CLI is unavailable (offline, CI sandbox, air-gapped), fall back to local markdown under docs/issues/ /.
The skills speak in terms of five canonical triage roles. This file maps those roles to the actual label strings used in this repo's issue tracker (GitHub Issues).