Package Exports
- package-build-stats
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (package-build-stats) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
This is the function that powers the core of building, minifying and gzipping of packages in bundlephobia.
Usage
const getBuiltPackageStats = require('package-build-stats')Building packages from npm
Building the latest stable version
const results = await getBuiltPackageStats('moment')Building a specific version / tag
const results = await getBuiltPackageStats('moment@2.24.0')Building local packages (beta)
const results = await getBuiltPackageStats('~/dev/my-npm-package') // must have a package.jsonPassing options to the build
const results = await getBuiltPackageStats('moment', options)Options
| Option | Values | Default | Description |
|---|---|---|---|
| client | npm or yarn |
npm |
Which client to use to install package for building |
| limitConcurrency | true or false |
false |
When using yarn as the client, use the network mutex to limit concurrency |
| networkConcurrency | number |
false |
When using yarn as client, limit simultaneous installs to this number. |
| customImports | Array<string> |
null |
By default, the default export is used for calculating sizes. Setting this option allows calculation of package stats based on more granular top-level exports. |
Contributing
- Clone this repo, run yarn install
- To make it easier to test changes when develop, you can start an HTTP server that uses REST APIs to report size of packages.
To start the server, run –
yarn run startThe server runs at port 3000.
To build a package and get its build stats, run a curl request like so -
curl 'localhost:3000/size?p=<package-name>'eg.
curl 'localhost:3000/size?p=react'To build a package and get stats about exports that are exposed out of the package –
curl 'localhost:3000/exports?p=<package-name>'To build a package and get stats about size of various exports that are exposed out of the package –
curl 'localhost:3000/export-sizes?p=<package-name>'