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 🙏

© 2024 – Pkg Stats / Ryan Hefner

adslot-ui

v34.3.3

Published

Core component library. By Adslot

Downloads

16,418

Readme

Adslot UI

npm version Build Status Coverage Status Linting Status Optimisation Status codecov.io

See the docs at ui.adslot.com

Core component library. By Adslot

A library of core components used to develop our Adslot and Symphony products.

Technology:

Development

To get started, take a look at our Contributing guidelines

Native

  • Clone the repo: git clone [email protected]:Adslot/adslot-ui.git
  • Install NPM dependencies: npm run deps

Visual Studio Code Remote - Containers

  • Install Docker
  • Install Visual Studio Code
  • Install Visual Studio Code Remote - Containers extension in your VS Code.
  • Start VS Code and run Remote-Containers: Clone Repository in Container Volume... from the Command Palette.
  • Authenticate with your GitHub account.
  • Enter adslot/adslot-ui in the input box that appears and press Enter.
  • VS Code window (instance) will reload, clone the source code of this project, and start building the dev container. A progress notifications provides status updates.
  • After the build completes, VS Code will automatically connect to the container. You can now work with the repository source code in this independent environment as you would if you had cloned the code locally.

Notes:

Development build

  • Every branch has its own build of the documentation app ready at: https://<branch-name>--adslot-ui.netlify.app

Commands

# Start for development

npm start

# Start the dev-server without automatic refresh

npm run start:cold

# Just build the dist version and copy static files

npm run dist

# Lint all files in src (also automatically run after tests)

npm run lint

# Run tests and posttest linting

npm run test [-- --no-coverage]

# Run tests and rebuild on file changes.

npm run test:watch [-- <path>] [--coverage]

# Optimize SVG before you commit
npm run svgo

# Generating types

# Generate types for all components
npm run generate-types

# Generate types for a single component
npm run generate-types -- --only=Button

# Generate types for a single component (this will run for all jsx files in the folder matching Button)
npm run generate-types -- --only=Button

# Generate types for a specific file
npm run generate-types -- --only=Button/index.jsx

# globs are accepted:
npm run generate-types -- --only="RichTe*"

# Copy generated types to es/*
npm run generate-types -- --copy

#Generate types with debugging output
npm run generate-types -- --debug

#Check validity of generated types
npm run type-check

Build Profiling

To generate a profile: npm run profile

Upload the new stats.json file to Webpack Analyse Tool.

Optimizing Performance of Stateless Components

Add the following to /docs/Layout/index.jsx:

import Perf from 'react-addons-perf';

window.Perf = Perf;
  • In the browser, run Perf.start() to start recording.
  • Interact the component in the way that feels slow.
  • Run Perf.stop() to stop recording.
  • Run Perf.printWasted() to see the nodes that are re–rendering but do not change the DOM.
  • Re-test to make sure you're improving performance.

Design tokens

See adslot-ui/system