Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
React Component Library that implements a Themeable Design System powered by Emotion.js
Ursa is a multi-purpose monorepo for building a themeable React component library and design system powered by Emotion.js, bundling NPM packages, VS Code extensions, CLI tools, and websites in one repository.
Ursa is a JavaScript monorepo structured around a React component library that implements a themeable design system using Emotion.js for CSS-in-JS styling. It uses Yarn workspaces to manage multiple package types — NPM packages, VS Code extensions, CLI tools, and websites — although some of these packages are not yet built and are in the pipeline. The primary deliverable is the React component library, which is configured for TypeScript and published through changesets.
yarn build installs dependencies and builds all packages at once.yarn ts-check and type-only builds via yarn build:types are built-in.yarn changeset creates an intention-to-publish record, supporting versioning and changelogs for NPM packages.yarn test), Prettier formatting (yarn format), and cache cleaning (yarn clean and yarn clean:all) are available.Ursa is for frontend teams and open-source maintainers who want to create and publish a themeable React component library. Developers starting a multi-package monorepo can use the Yarn workspaces setup as a foundation. Contributors to design systems who prefer Emotion.js for styling will find the project's theming approach directly applicable.
Run yarn to install dependencies and yarn build to compile every workspace. For development, yarn changeset prepares a release, yarn ts-check verifies types, yarn test runs all tests, and yarn format applies Prettier. The commands yarn clean and yarn clean:all remove caches and build outputs.
