docs: add contributor docs, agent rules, templates and CI
KO
2d ago+2529+2529+0123456789012345678901234567890123456789-132-132-012345678901234567890123456789
Gives this repo the same contributor docs, rules and tooling as drift-ui/ui.
Stacked on #2. CI runs the Jest suite that #2 adds, so merge #2 first. After that, this diff only has the two commits below.
What's in it
- README.md: the component table, install steps, local development and the repo layout. The install URL points at
native.drift-ui.dev, and the README says to build the registry locally until that site exists. - CONTRIBUTING.md: setup with a simulator or Expo Go, a seven-step checklist for porting a component, component guidelines, and the commit conventions. Porting starts in drift-ui/ui: a component with a lib file gets its
registry:libitem there first, as #146 does for key-value-editor. - AGENTS.md and CLAUDE.md: the same issue-to-pull-request workflow as drift-ui/ui, written for React Native. This replaces the AGENTS.md from the Expo template but keeps its warning to check the versioned Expo docs. It also adds a
work-on-issueskill. - .github:
- The pull request template has a "Differences from the web component" section and checkboxes for iOS, Android and dark mode.
- The bug template asks for platform and device.
- The component request template only covers components that already exist in drift-ui.
- CI runs format, typecheck, lint, test and the registry build.
- Tooling: Prettier with the same settings as drift-ui/ui, including Tailwind class sorting. ESLint runs through
expo lintand is pinned to 9, becauseeslint-plugin-reactfails to load on ESLint 10.
Formatting the repo rewrote the React Native Reusables files to our style (double quotes, no semicolons). drift-ui/ui does the same with its shadcn files.
Renovate is left out because #1 already adds it.
Checklist
-
bun run format:check,bun run typecheck,bun run lint,bun run testandbun run registry:buildpass
Summary by cubic
Sets up this repo's contributor docs, agent rules, GitHub templates, CI and formatting tooling to match drift-ui/ui, and ports key-value-editor as the first registry component.
Docs and templates
- README, CONTRIBUTING, AGENTS.md, CLAUDE.md and a
work-on-issueskill cover setup, the porting checklist and the issue-to-pull-request workflow. - New PR, bug and component request templates ask for differences from the web component and iOS/Android/dark-mode checks.
- CI runs format, typecheck, lint, test and the registry build, including the Jest suite added here.
Tooling and first component
- Prettier matches drift-ui/ui (no semicolons, double quotes, Tailwind class sorting), which reformatted existing files; ESLint is pinned to 9 because
eslint-plugin-reactfails to load on 10. - Jest with jest-expo and React Native Testing Library is added, with test suites for the registry components.
key-value-editorkeeps the web component's API and shared logic, and detects pasted .env text inonChangeTextsince React Native has no paste event; a newline or a paste that replaces a selected key counts as a paste.