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

@kis-technologies/kis-ui

v2026.1.27

Published

A modern, maintainable, and scalable UI component library for KIS products, built with **Material-UI v5**, **React**, and **TypeScript**. This library follows the **Atomic Design Pattern** and ensures complete encapsulation of Material-UI, preventing dire

Readme

KIS UI Library

A modern, maintainable, and scalable UI component library for KIS products, built with Material-UI v5, React, and TypeScript. This library follows the Atomic Design Pattern and ensures complete encapsulation of Material-UI, preventing direct MUI usage in consuming applications.

Getting Started

As you develop the kiosk / admin portals, you will likely have to make edits to this project and use them in tandem with those repos. Rather than republishing this over and over in the npm registry, you should link your local version of kis-ui into any and all dependent repos. Before continuing, install yalc:

yarn global add yalc

Developing

Setup and run storybook

To get the UI library up run the below command.

yarn install

Developing alongside a dependent application

To make updates to this package and have them propagate to any dependent applications, run the following set of steps:

  1. [Do this once] Publish your kis-ui repo to your local yalc repository (found at ~/.yalc)
yarn build
yalc publish
  1. Link it to your dependent project. The project will then use your yalc published kis-ui. For example:
cd /path/to/kis-kiosk
yalc link @kis-technologies/kis-ui
  1. Make edits to this repo, and push those changes to all dependent repos (yalc automatically tracks this, so a single push will propagate changes to both the kiosk and admin portals, for example).
yalc update

To remove the link in dependent repo:

yalc remove @kistech/kis-ui-2024

Example Usage

import { Button, Typography } from '@kistech/kis-ui-2024';
export const LoginPage = () => (
<>
    <Typography variant="h5">Sign In</Typography>
    <Button appearance="kis-orange" size="medium">
    Submit
    </Button>
</>
);

Built With

The kis-ui library is built using the following technologies and tools:

  • React: For building the user interface components in a declarative way.
  • Material-UI: For using pre-built Material Design components and styling.
    • @mui/material: Core Material-UI components.
    • @mui/icons-material: Material Design icons.
    • @mui/system, @mui/styles: Utilities and styles for custom styling.
  • TypeScript: For adding static types and improving code reliability.
  • Rollup: Module bundler for packaging the library in multiple formats (ESM, CJS).
    • rollup-plugin-peer-deps-external: External peer dependency plugin for Rollup.
    • rollup-plugin-postcss: For handling CSS imports in Rollup.
    • rollup-plugin-terser: For minifying the code during the build process.
  • Storybook: For developing and displaying UI components in isolation.
  • Jest and React Testing Library: For testing components.
  • Yarn: Package manager for managing dependencies and running scripts.
  • ESLint: For linting the codebase to ensure consistent style and catch errors.

Prerequisites

  1. Node.js (version 18.x or later) and Yarn are required to develop with this UI library. You can download them here:

  2. Clone the repository and navigate to the project directory:

    git clone <repo_url>
    cd kis-ui-2024
  3. Then follow the steps mentioned in Developing section

Adding Components

This library follows the Atomic Design methodology, with components structured into three main levels:

  • Atoms – Basic elements like buttons, inputs, labels.
  • Molecules – Combinations of atoms forming functional UI pieces.
  • Organisms – Relatively complex and reusable UI sections composed of molecules and/or atoms.

To add a new component:

  1. Decide if your component is an Atom, Molecule, or Organism.
  2. Navigate to the corresponding folder in src/components/.
  3. Create a new folder for your component (e.g., MyComponent/).
  4. Inside that folder, add the following files:
    MyComponent/
    ├── MyComponent.tsx
    ├── MyComponent.styled.ts
    ├── MyComponent.types.ts (optional)
    ├── MyComponent.test.tsx (optional)
    └── index.ts
  5. Update the index.ts file of the corresponding layer to export your new component.
  6. Ensure it is exported from the root src/index.ts file if it needs to be consumed externally.

Tests

yarn test

Building

yarn build

Deploying

This project uses Jenkins for CI/CD and automates deployment to npm when changes are pushed to the master branch.

Deployment Steps

  1. A Jenkins pipeline is configured to:

    • Install dependencies using yarn install
    • Build the project using yarn build
    • Publish the package to npm when on the master branch
  2. The deployment process uses a secure npm token stored in Jenkins credentials (NPM_TOKEN).

  3. .npmrc is generated at runtime for authentication, and the package is published with:

    npm publish
  4. After each pipeline run, the workspace is cleaned using cleanWs() to ensure a fresh state.

NOTE: Deployment happens automatically. Make sure your package.json version is updated before merging into master.

Versioning

This library follows Semantic Versioning (MAJOR.MINOR.PATCH):

  • MAJOR version — for incompatible API changes
  • MINOR version — for new, backward-compatible features
  • PATCH version — for backward-compatible bug fixes

Version updates should be made in the package.json file before publishing a new release.

📌 Example: If you introduce a breaking change, update the major version: "version": "2.0.0"

Deployment to npm is automated through Jenkins when changes are pushed to the master branch (see Deploying).

Licensing

This library is proprietary and intended solely for use within KIS products.
Unauthorized use, distribution, or modification outside of KIS Technologies is strictly prohibited.