Knit UI
GitHub

Packages

Versions and export counts are read from each package's package.json and barrel at build time, so this table is never stale.

PackageVersionExportsWhat it is
@knitui/core0.8.0123Design tokens, theme and cross-platform primitives for Knit UI.
@knitui/components0.8.0552Cross-platform (React Native + Web) component kit for Knit UI.
@knitui/hooks0.8.077Shared React hooks used across Knit UI.
@knitui/icons0.8.06,157Hybrid React + React Native icon kit generated from @tabler/icons SVG data.
@knitui/emoji0.8.03,811Hybrid React + React Native emoji kit generated from Google Noto Emoji SVG data.
@knitui/dates0.8.0198Date and time components for Knit UI.
@knitui/carousel0.3.765Cross-platform carousel for Knit UI (Embla-style engine).
@knitui/map0.4.3105Cross-platform MapLibre map surface for Knit UI.
@knitui/media0.4.18Audio and video players, playlists and visualizers for Knit UI.
@knitui/graphics0.8.086Skia-powered graphics primitives and effects for Knit UI.
@knitui/sheet0.3.714Cross-platform bottom sheet for Knit UI.
@knitui/mediaquery0.8.030Cross-platform media queries and responsive breakpoints for Knit UI (React Native + web, SSR-safe).
@knitui/plugins0.1.110Pre-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.

PackageRequired peersOptional peers
@knitui/corereact react-native react-native-gesture-handler react-native-reanimated react-native-web
@knitui/componentsreact react-native react-native-svg react-native-teleport react-native-web react-native-reanimated react-native-worklets react-native-gesture-handler
@knitui/hooksreact react-native react-native-reanimated
@knitui/iconsreact react-native react-native-svg
@knitui/emojireact react-native react-native-svg
@knitui/datesreact react-native react-native-teleport react-native-web react-native-reanimated
@knitui/carouselreact 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/mediareact react-native react-native-reanimated
@knitui/graphics@shopify/react-native-skia react react-native react-native-reanimated
@knitui/sheetreact react-native react-native-gesture-handler react-native-reanimated react-native-worklets
@knitui/mediaqueryreact react-native
@knitui/pluginsreact react-native next

Subpath exports

Several packages expose more than their barrel:

EntryWhat it is
@knitui/components/control-systemThe size/colour/icon contract other packages build controls against
@knitui/core/configThe Tamagui config, for build plugins
@knitui/graphics/runtimeloadGraphicsRuntime() — the CanvasKit preloader for the web
@knitui/plugins/babel-plugin · /metro · /next-plugin · /vite · /webpackBuild integrations
@knitui/plugins/nextNextTamaguiProvider — the SSR style flush
@knitui/media/dspPure-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.