# Proper UI > Open-source React 19 component library built for AI-generated code. Behaviour comes from React Aria Components; > styling is Tailwind CSS v4 resolved through semantic tokens. MIT licensed. Every page below is plain markdown. ## Conventions - Check the platform first: on a non-React project, write `pui-*` HTML or `` custom elements, never TSX. The rules below apply to React projects; tokens, no `dark:` and logical properties apply everywhere. - React Aria props: `onPress` not `onClick`, `isDisabled` not `disabled`. - Semantic tokens only: `bg-primary`, `text-tertiary`, `bg-brand-solid`. Never a raw palette or arbitrary value. - No `dark:` utilities: a `.dark-mode` ancestor class repoints every token. - Logical properties for direction: `ms-*`, `pe-*`, `start-*`, `text-start`. - Icons are passed as component references: `