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 🙏

© 2025 – Pkg Stats / Ryan Hefner

@inubekit/foundations

v5.11.6

Published

Library for publishing all Design System Foundations

Downloads

813

Readme

Foundations

This library publishes core tokens that are used by each individual component. They are core because they set the bare minimum variables that the system applies across the whole set of components that belong to inubekit.

Installation

The library is publish in npm.

npm install @inubekit/foundations

Usage

This library exposes then a set of objects that contain the values of some variables considered core for the aesthetics of the whole system. This library also has the mission of serving as the default values of those variables.

It is not expected that the users of inubekit, the developers who use the design system to build interfaces, have to work directly this this specific library. This is because all the components that those developers will end up using already have this dependency installed.

Personalization

Structure and values

When the users of this design system need to change the values of these core variables to provide a different aesthetic in their apps, the approach should be to create a token structure that follows the structure that this library offers.

It is vital to follow the structure, since the component expect to extract each value following the structure of the objects that holds it. The only segment that can be change is the inube name of the exported object. That value can be whatever you wants as long as that object gets passed to the whole object as theme in a Provider.

Implementation

That new structure could be added directly inside the particular project that needs new values, or by creating a service that returns the data structure depending on some conditions --for example, to make the values dependent per client or user of each specific app--.

To make the personalization work, it would need a particular way of making these variables accessible for all components. In this design system, the way is to use the <ThemeProvider /> component that is exported from styled-components. This also means that the components of the system are built using styled-components as its CSS-in-JS approach to create and style its components.

Typography

This part of the structure is shared among multiple components that need to render some texts (<Text />, <Button />, <Link />, etc). If you need to change the font-face used in an app, keep in mind that adjusting the values of typography tokens is just one of a two-step process.

  1. You must change the typography tokens following the structure provided to use the new desired font(s).
  2. You must install the font in your application, otherwise the application will try to use the fallback fonts or directly use the default font of the browser if no fallback is provided.

Options for installing fonts:

  1. You can manually install the font in your app by using links in your index.html or by installing it directly with @font-face rules in CSS.
  2. You can use the useFonts() hook provided by @inubekit/hooks to install fonts dynamically in runtime (useful when your single application must support multiple clients, each one with a different font).