# @theme-ui/core

> [![Minified Size on Bundlephobia](https://badgen.net/bundlephobia/minzip/@theme-ui/core)](https://bundlephobia.com/package/@theme-ui/core)

Latest version **0.17.4** (published 2026-01-02) · MIT license · 0 weekly downloads

## Install

```sh
npm install @theme-ui/core
pnpm add @theme-ui/core
yarn add @theme-ui/core
bun add @theme-ui/core
```

## Health

**Score 55/100 (C)** — status: stable.

Positive: has types; esm support; no vulnerabilities.

Warnings: low downloads; pre 1.0.

## Facts

| | |
|---|---|
| Version | 0.17.4 |
| Published | 2026-01-02 |
| First published | 2019-12-31 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 2 |
| Unpacked size | 66.1 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 5399 |
| Author | Brent Jackson |
| Maintainers | jxnblk, johno, hasparus, lachlanjc |

## Links

- npm: https://www.npmjs.com/package/@theme-ui/core
- Repository: https://github.com/system-ui/theme-ui
- Homepage: https://github.com/system-ui/theme-ui#readme
- Issues: https://github.com/system-ui/theme-ui/issues
- npm.io page: https://npm.io/package/@theme-ui/core

## Dependencies (2)

- [deepmerge](https://npm.io/package/deepmerge.md) ^4.2.2
- [@theme-ui/css](https://npm.io/package/@theme-ui/css.md) ^0.17.4

## Recent versions

- 0.17.4 (latest) — 2026-01-02
- 0.17.2-develop.1 (develop) — 2025-02-14
- 0.16.2-scale-tuples.0 (canary) — 2023-09-26
- 0.6.0-alpha.8 (next) — 2021-03-19
- 0.4.0-highlight.0 (highlight) — 2020-05-08
- 0.17.2 — 2025-02-14
- 0.17.2-develop.0 — 2024-12-18
- 0.17.1 — 2024-10-24
- 0.17.1-develop.0 — 2024-10-24
- 0.17.0 — 2024-10-18
- 0.17.0-develop.1 — 2024-10-18
- 0.17.0-develop.0 — 2024-10-18
- 0.16.2 — 2024-02-19
- 0.16.2-develop.5 — 2024-02-19
- 0.16.2-develop.2 — 2024-01-05
- … 416 more at https://npm.io/package/@theme-ui/core/versions

## README

# @theme-ui/core

[![Minified Size on Bundlephobia](https://badgen.net/bundlephobia/minzip/@theme-ui/core)](https://bundlephobia.com/package/@theme-ui/core)

`@theme-ui/core` provides minimal React support for lightweight usage.

```sh
npm i @theme-ui/core @emotion/react
```

## Usage

```js
/** @jsxImportSource @theme-ui/core */

import { ThemeProvider } from '@theme-ui/core'

export function App() {
  return (
    <ThemeProvider theme={{ colors: { primary: '#33e' } }}>
      <h1 sx={{ color: 'primary' }}>Hello</h1>
    </ThemeProvider>
  )
}
```

If you already use `theme-ui` package, the batteries-included version of Theme
UI, you don't need to install `@theme-ui/core` separately — it's already in your
node_modules, and `theme-ui` reexports everything from it.

## API

- `jsx` — JSX function to create React elements supporting `sx` prop
- `ThemeProvider` — a [context provider](https://reactjs.org/docs/context.html)
- `useThemeUI` — a hook to access your theme
- `merge` — an utility function to deeply merge themes together

Note that `@theme-ui/core` doesn’t add global or root styles to
`<html>`/`<body>`. Refer to the
[Global Styles docs](https://theme-ui.com/guides/global-styles) for how to add
global styles.

## JSX Runtime

As `@theme-ui/core` defines `jsx` function and types for it, you can use it to
configure JSX runtime without installing `theme-ui` package.

### Entry point `/jsx-runtime`

- `jsx`
- `jsxs`

### Entry point `/jsx-dev-runtime`

- `jsxDEV`

---
_Source: https://npm.io/package/@theme-ui/core · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
