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

frs-style-guide

v2.1.0

Published

FRS style guide

Downloads

20

Readme

Style guide

You can run the style guide locally by running:

  • npm install
  • npm start
  • Go to http://localhost:3000/styleguide/

Naming convention

We will use the following naming convention

component-name
component-name--modifierName
component-name__descendent
is-*

// utilities
u-*

// Extended
has-*
no-*
js-*

Variables

You can find the variables of the style guide inside the public/frs-style/variables.scss. All the variables start with sg-* (Style Guide). The currently exposed variables are:

$sg-font-family
$sg-font-size
$sg-spacing

Publish

The code is published on npm, it will be automatically bundled into a css file during the publishing process. Make sure you are signed in via npm login. See npm documentation for more information.

git commit -m 'Changed something'

# For small changes
npm version patch
npm publish
git push origin master

# To push the tags in Bitbucket
git push --tags

API

You can also require the style guide and mount the express app on your server, check example/index.js

Debugging

If you're getting an unexpected token error you may be using the wrong versions of node and npm. If you're using nvm you can run nvm use in the project directory to use a compatible version.

How to build UI

Spacing

  • Default spacing should be the font-size, 16px here.
  • If you want to add spacing to an element you should use a multiplier of $spacing, $spacing * 2, $spacing / 2
  • For symmetrical spacing (both top/bottom or left/right) you should use padding (padding: $spacing 0)
  • Always push down UI elements with a margin-bottom, it will make them fit coherently in a layout.

Colors

  • Don't create a color that is too close to another one
  • Ban light grays, it has very low contrast and readability

Other

  • Use pseudo-elements when you can so that you can toggle it with CSS classes (example: is-required)
  • When you need a special case of a CSS element, either generalize it with a modifier class or create a utility class (reference: http://www.basscss.com/)