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

@jflamb/keycaps-tokens

v0.4.0

Published

Framework-neutral Keycaps design tokens and locally hosted fonts.

Downloads

189

Readme

@jflamb/keycaps-tokens

Framework-neutral Keycaps CSS custom properties, locally hosted Piazzolla, Sofia Sans and Lilex assets, semantic light/dark themes, reduced-motion defaults, and forced-color support.

@import "@jflamb/keycaps-tokens";

Set data-theme="light" or data-theme="dark" on the root element for an explicit theme. Without an explicit value, Keycaps follows the system color scheme.

The semantic Layered Plate ladder is available as --kc-color-surface-minimal, --kc-color-surface-tonal, and --kc-color-surface-contrast, with matching inverse text tokens. Selector and settling transitions use --kc-duration-settle and --kc-ease-settle; reduced motion resolves that duration and its offset/rotation tokens to zero.

Long-form content

Styling for the elements a CMS or a markdown pipeline emits ships separately, because a product surface that renders no articles should not pay for it:

@import "@jflamb/keycaps-tokens/prose.css";
<article class="kc-prose">…</article>

Everything in it is scoped to .kc-prose, so importing it changes nothing until that class appears.

Email rendering

Email renderers consume the generated, flattened theme rather than copying CSS values or relying on custom properties inside an email client:

import theme from "@jflamb/keycaps-tokens/email-theme.json" with { type: "json" };

The same artifact is published at https://jflamb.github.io/keycaps-design-system/email-theme.json. It contains only validated appearance data; email content and HTML remain the consumer's responsibility.

New projects should use the --kc-* properties. Existing jflamb applications can opt into compatibility aliases with:

@import "@jflamb/keycaps-tokens/legacy.css";

Documentation: https://jflamb.github.io/keycaps-design-system/

License

MIT for the tokens, base styles, and build output — see LICENSE.

The bundled font binaries are not MIT. Piazzolla, Sofia Sans and Lilex remain under the SIL Open Font License 1.1, which is why this package declares MIT AND OFL-1.1. Keep LICENSE-PIAZZOLLA.txt, LICENSE-SOFIA-SANS.txt and LICENSE-LILEX.txt with the WOFF2 files if you copy them out of dist/fonts/.