npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@stratakit/foundations

v0.4.6

Published

Foundational pieces of StrataKit

Readme

@stratakit/foundations

Foundational pieces of StrataKit.

This package includes:

  • CSS reset and global styles
  • Design tokens, exposed as "CSS variables".
  • <Root> component
  • <Icon> component

Installation

Using your package manager of choice, install the latest version of @stratakit/foundations.

npm add @stratakit/foundations

[!NOTE] This package is a dependency of @stratakit/mui and does not need to be installed explicitly if you're already using @stratakit/mui.

Usage

To use StrataKit in your app, you’ll need to wrap your application's entrypoint with StrataKit's <Root> component, which requires the colorScheme and density props.

import { Root } from "@stratakit/foundations";

export function App() {
	return (
		<Root colorScheme="dark" density="dense">
			{/* Use StrataKit components here */}
		</Root>
	);
}

This will ensure StrataKit's styles are loaded to either the document or the encompassing shadow root.

Once that’s in place, you can import and use components from @stratakit/bricks and other @stratakit packages.

By default, StrataKit's CSS variables are made available to the entire page (including the <html> element, which will automatically use an appropriate background-color). The synchronizeColorScheme prop can be set to false to prevent this behavior, which can be useful if you want to isolate StrataKit's styles to only the parts of the page that are wrapped in <Root>.

[!NOTE] If you are trying to use this package alongside the current stable version of iTwinUI, you will also need to set up the theme bridge.

Fonts

StrataKit uses InterVariable as its interface font. In the future, other fonts may also be added for different purposes. We recommend self-hosting all fonts for robustness, security and performance reasons.

To self-host InterVariable, download the InterVariable.woff2 and InterVariable-Italic.woff2 font files from the official website, and serve them alongside your other assets. Then include the following CSS in the <head> of your document, replacing the placeholder paths with the correct path to where the fonts are located:

<style>
	@font-face {
		font-family: InterVariable;
		font-style: normal;
		font-weight: 100 900;
		font-display: swap;
		src: url("/path/to/InterVariable.woff2") format("woff2");
	}

	@font-face {
		font-family: InterVariable;
		font-style: italic;
		font-weight: 100 900;
		font-display: swap;
		src: url("/path/to/InterVariable-Italic.woff2") format("woff2");
	}
</style>

Build tools such as Vite can handle url() references and automatically copy these files into your output directory with hashed file names. These files can then be safely served with HTTP caching without blocking upgrades to newer versions of the fonts.

[!NOTE] If the <Root> component cannot find InterVariable as a font in the document, it will automatically add a fallback which uses Inter’s CDN. In all cases, we recommend self-hosting to avoid any potential security and reliability issues that may arise from the use of a third-party CDN.

Contributing

Are you interested in helping StrataKit grow? You can submit feature requests or bugs by creating issues.

If you're interested in contributing code, please read CONTRIBUTING.md for more information.