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

@startupjs/bundler

v0.61.7

Published

Opinionated scripts and configs to develop a react-native-web project

Readme

startupjs bundler

Opinionated scripts and configs to develop a react-native-web project

Requirements

react-native-svg: >= 14.0.0

Usage

TBD

Async chunks support

Pass ASYNC=1 env var when building to enable the asynchronous chunks support. This will make each node module from /node_modules/ and each component from the /components/ folder to be its own small chunk loaded asynchronously.

This is useful when you are using dynamic import() in your code.

When the ASYNC=1 is passed, the files with the extension .async.js will take priority over the plain .js files. This enables you to move the asynchronous dynamic import() statements into their own files.

Duplicating your dependencies in .js and .async.js files enables you to have your codebase running in environments which don't support the dynamic import() yet, for example the react-native Metro builder.

Your production server must have HTTP/2 support, otherwise you'll have a connection limit of around 6 connections per hostname and you will notice your website loading VERY SLOOOOW in production (if you set the Network Throttling to Slow 3G).

If you use Google Load Balancer and serve your content through HTTPS, then you already have the HTTP/2 enabled without having to handle HTTP/2 in your Node.js app:

https://cloudplatform.googleblog.com/2015/10/Full-Speed-Ahead-with-HTTP2-on-Google-Cloud-Platform.html

https://ma.ttias.be/view-http-spdy-http2-protocol-google-chrome/

Export from stylus and css files

We can export variables directly from stylus into js. Here is an example:

  1. In ShoppingCart/index.styl file:
// allow overrides from global configuration
$this = merge({
  bgColor: $UI.colors.primary,
  height: 10u
}, $UI.ShoppingCart, true)

.root
  height: $this.height
  background-color: $this.bgColor

:export
  config: $this
  colors: $UI.colors
  foobar: 42
  1. Now import variables colors, config and foobar in the ShoppingCart/index.js file:
import STYLES from './index.styl'

const {
  config: { bgColor },
  colors,
  foobar
} = STYLES

export default function ShoppingCart () {
  console.log('Background color is:', bgColor)
  console.log('Available colors:', colors)
  console.log('Magic number FooBar:', foobar)
  return <View styleName='root' />
}

MIT License

Copyright (c) 2018 Pavel Zhukov