Packages
Versions and export counts are read from each package's package.json and barrel
at build time, so this table is never stale.
| Package | Version | Exports | What it is |
|---|---|---|---|
@knitui/core | 0.8.0 | 123 | Design tokens, theme and cross-platform primitives for Knit UI. |
@knitui/components | 0.8.0 | 552 | Cross-platform (React Native + Web) component kit for Knit UI. |
@knitui/hooks | 0.8.0 | 77 | Shared React hooks used across Knit UI. |
@knitui/icons | 0.8.0 | 6,157 | Hybrid React + React Native icon kit generated from @tabler/icons SVG data. |
@knitui/emoji | 0.8.0 | 3,811 | Hybrid React + React Native emoji kit generated from Google Noto Emoji SVG data. |
@knitui/dates | 0.8.0 | 198 | Date and time components for Knit UI. |
@knitui/carousel | 0.3.7 | 65 | Cross-platform carousel for Knit UI (Embla-style engine). |
@knitui/map | 0.4.3 | 105 | Cross-platform MapLibre map surface for Knit UI. |
@knitui/media | 0.4.1 | 8 | Audio and video players, playlists and visualizers for Knit UI. |
@knitui/graphics | 0.8.0 | 86 | Skia-powered graphics primitives and effects for Knit UI. |
@knitui/sheet | 0.3.7 | 14 | Cross-platform bottom sheet for Knit UI. |
@knitui/mediaquery | 0.8.0 | 30 | Cross-platform media queries and responsive breakpoints for Knit UI (React Native + web, SSR-safe). |
@knitui/plugins | 0.1.11 | 0 | Pre-configured Tamagui build-tool plugins for the knitui UI kit (babel, metro, next, vite, webpack) plus the Next.js SSR provider. |
What to install
Always: @knitui/core + @knitui/components.
As needed: the satellite kits. Each is independent — installing
@knitui/dates does not pull in maps or media.
Build-time only: @knitui/plugins, in your bundler config. See
Bundler setup.
Peer dependencies
Peers are the part of installing a React Native design system that actually goes wrong, so here they are per package, with the optional ones marked.
| Package | Required peers | Optional peers |
|---|---|---|
@knitui/core | react react-native react-native-gesture-handler react-native-reanimated | react-native-web |
@knitui/components | react react-native react-native-svg react-native-teleport | react-native-web react-native-reanimated react-native-worklets react-native-gesture-handler |
@knitui/hooks | react react-native | react-native-reanimated |
@knitui/icons | react | react-native react-native-svg |
@knitui/emoji | react | react-native react-native-svg |
@knitui/dates | react react-native react-native-teleport | react-native-web react-native-reanimated |
@knitui/carousel | react | react-native react-native-gesture-handler react-native-reanimated react-native-worklets |
@knitui/map | @maplibre/maplibre-gl-style-spec @types/geojson react | @maplibre/maplibre-react-native maplibre-gl react-dom react-native react-native-svg |
@knitui/media | react | react-native react-native-reanimated |
@knitui/graphics | @shopify/react-native-skia react react-native | react-native-reanimated |
@knitui/sheet | react | react-native react-native-gesture-handler react-native-reanimated react-native-worklets |
@knitui/mediaquery | react | react-native |
@knitui/plugins | react react-native | next |
Subpath exports
Several packages expose more than their barrel:
| Entry | What it is |
|---|---|
@knitui/components/control-system | The size/colour/icon contract other packages build controls against |
@knitui/core/config | The Tamagui config, for build plugins |
@knitui/graphics/runtime | loadGraphicsRuntime() — the CanvasKit preloader for the web |
@knitui/plugins/babel-plugin · /metro · /next-plugin · /vite · /webpack | Build integrations |
@knitui/plugins/next | NextTamaguiProvider — the SSR style flush |
@knitui/media/dsp | Pure-TypeScript FFT and spectrum analysis |
Versioning
Packages are versioned independently and published with
Changesets. core and components
move together in practice; satellites move on their own.
See Compatibility for the React / React Native / Expo matrix, and the changelog for what changed.