write-api-docs
Write API Docs
Overview
Use this skill when documenting public APIs in Remix packages.
The goal is to document the API users can actually import, not every helper in src/lib.
Work from the package exports outward, add concise JSDoc to the public declarations, and make sure the result passes the repo's ESLint JSDoc rules.
This skill owns detailed JSDoc style and lint expectations. If documenting an API reveals that the TypeScript contract itself should change, use the expert-typescript-programmer skill for the type design work.
Workflow
- Identify the package's public exports.
- Find the
srcentry files that back those exports. - Trace those entry files to the declarations they re-export from
src/lib. - Add or tighten JSDoc on the public declarations only.
- Run package typecheck if appropriate and always run
pnpm run lint.
More from remix-run/remix
write-readme
Write or rewrite package README files in the style used by the Remix repository. Use when drafting a new package README, revising an existing README, or reviewing README structure, examples, installation instructions, and section ordering for Remix packages.
29add-package
Create or align a package in the Remix monorepo to match existing package conventions. Use when adding a brand new package under packages/, or when fixing an existing package's structure, test setup, TypeScript/build config, code style, and README layout to match the rest of Remix 3.
10remix-ui
Build the UI of a Remix app. Use when creating pages, layouts, client entries, interactions, stateful UI, navigation, hydration, styling, animations, reusable mixins, or UI tests.
7make-change-file
Create or update Remix repo change files under `packages/*/.changes`. Use when a user asks for release notes, a change file, a missing changelog entry, a prerelease note, or an update to existing unpublished release notes.
6remix-project-layout
Describe the ideal layout of a Remix application, including canonical directories, route ownership, naming conventions, and file locations on disk. When asked to bootstrap that layout in a new directory, run the bundled TypeScript script.
6publish-placeholder-package
Publish a placeholder npm package at version 0.0.0 so package names are reserved and npm OIDC permissions can be configured before CI publishing. Use when creating a brand-new package that is not ready for full release.
6