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

@grafana/fonts

v0.1.2

Published

Self-hosted Inter and JetBrains Mono font files for @grafana/design

Readme

@grafana/fonts

Self-hosted Inter and JetBrains Mono variable font files for @grafana/design, so applications don't depend on external font services or locally-installed fonts.

  • Inter — variable font, weights 100900. Used as the UI font.
  • JetBrains Mono — variable font, weights 100800, normal and italic. Used as the monospace font for code.

Both families ship as a single woff2 file per script, with font-display: swap applied to all @font-face declarations for predictable loading behavior.

Usage

Import the CSS once at the root of your app to load both families:

import '@grafana/fonts/fonts.css';

Or import the JS entry, which does the same (useful in bundler setups that prefer JS-only imports):

import '@grafana/fonts';

The font names exposed are Inter and JetBrains Mono — these match the values used by @grafana/design-tokens's primitives.typography.fontFamily.ui and primitives.typography.fontFamily.monospace, so no extra CSS configuration is needed beyond the import.

Via @grafana/components

If your app imports anything from @grafana/components, the fonts CSS is loaded transitively — @grafana/components's entry point (src/index.ts) does the side-effect import, so a typical Grafana plugin or app needs no explicit @grafana/fonts/fonts.css line:

import { ComparisonBadge } from '@grafana/components';
// fonts.css is already registered by the import above

Add an explicit @grafana/fonts/fonts.css import only if you're using fonts in a context that doesn't depend on @grafana/components — e.g. a CSS-only consumer, a non-React surface, or an app that uses <ColorModeProvider> from @grafana/theme-providers directly without pulling in any components.

Vite consumers

The bundled fonts.css references woff2 files via relative url(...) paths that resolve to this package's dist/files/ directory inside node_modules. That works out of the box for published consumers.

If you're developing against a locally-linked copy of this package (via pnpm link, npm link, or a sibling-path resolution shim), Vite's default server.fs.allow is restricted to the consumer project's root and will refuse to serve woff2 files from outside it. Widen the allowlist in vite.config.ts:

export default defineConfig({
  server: {
    fs: {
      // Allow the dev server to serve font files from locally-linked
      // sibling packages.
      allow: ['..'],
    },
  },
});

Production builds bundle the font files in via the consumer's normal asset pipeline, so this only affects vite dev.

Font feature settings

The CSS also exposes a --font-feature-settings-ui custom property containing a curated set of OpenType features for Inter — contextual alternates, alternate numerals, square punctuation/quotes, alternate 1/l, compact f, tabular numerals, and slashed zero. Apply it via:

body {
  font-feature-settings: var(--font-feature-settings-ui);
}

Building

Font files are copied from the upstream packages (inter-ui, @fontsource-variable/jetbrains-mono) into dist/files/ and a combined dist/fonts.css is assembled.

pnpm build