Thanks for helping build the Refract web app! UI and DX contributions are very welcome.
- Be respectful — see the Code of Conduct.
- Discuss larger UI/UX changes in an issue first (a screenshot or sketch helps).
- Keep the build green: lint, typecheck, and build must pass.
npm install
npm run dev # http://localhost:3000npm run lint
npm run typecheck
npm run build- TypeScript throughout; type component props explicitly.
- Style with Tailwind utilities and the design tokens defined in
src/app/globals.css(--pm-*). Avoid hard-coded hex colors — reuse tokens. - Mark interactive client components with
"use client". - Keep components accessible: semantic elements, labelled controls, visible focus.
- Prefer composition over deeply nested conditionals in JSX.
- Wallet connection (Freighter / Stellar Wallets Kit) and transaction signing.
- Wiring pages to live
refract-backendendpoints (replace placeholder data). - A shared
lib/apiclient and loading/error states. - Responsive polish and reduced-motion support.
- Conventional Commits:
feat:,fix:,style:,docs:,chore:. - Include before/after screenshots for visual changes in your PR.