A pnpm-workspace monorepo housing the public @appica/ui-* packages. One
workspace so far (pnpm-workspace.yaml), with more integrations (html, vue, …)
to land as sibling packages:
packages/react- the@appica/ui-reactcomponent library (React 19 + Base UI@base-ui/react+ Motion + Tailwind v4). Conventions: packages/react/AGENTS.md.
Always read the scoped guide for the area you're working in before writing code there.
The documentation site (appica.dev, incl. the UI docs at /ui) is its own repo
at ~/Sites/appica-dev - this repo is packages-only, like the sibling
appica-icons and appica-country-flags repos. The site consumes this library
as a packed tarball (file: dependency), not a workspace dependency. After
changing a component, rebuild + repack so the site can pick it up:
pnpm pack:react # build + pack → packages/react/appica-ui-react-<version>.tgz
then reinstall in appica-dev (pnpm install --force there if the version didn't change).
pnpm --filter @appica/ui-react test | build | typecheckpnpm pack:react- build + pack the tarball consumed by appica-dev
Use the plain keyboard hyphen - everywhere. Never — or –. That covers
prop JSDoc, code comments, docs prose, and commit messages. Typographic dashes
read as machine-written, and a sentence leaning on one usually wants a comma, a
colon, or a full stop instead. A parenthetical aside takes brackets, not a pair
of dashes.
Use American English spelling everywhere, in the same places. color,
behavior, center/centered, labeled, honors, gray, neighbor,
canceled, -ize over -ise. The public API is already American, so British
prose beside it reads as a mismatch. (aria-labelledby is a DOM attribute, not
a misspelling.)
Full rules: packages/react/AGENTS.md.
Prop JSDoc in the component sources generates the ## API reference tables on
appica.dev - editing a comment edits the website. The rules (what to document,
what never to document, and the repack → regenerate loop) live in
packages/react/AGENTS.md. Read
them before adding or changing any prop.
Interactive git flags (-i) aren't available; commit/push only when asked, and branch first if on the default branch.
These in-repo AGENTS.md files are the canonical, versioned source of project conventions (shared with collaborators and any agent that reads AGENTS.md). The docs site's authoring conventions live in the appica-dev repo's own AGENTS.md/ARCHITECTURE.md. The maintainer's Claude Code memory holds extended rationale and in-flight notes; stable rules are promoted here.