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

@everledger/js-toolchain

v1.1.6

Published

Common tooling for JavaScript compilation workflows used throughout projects

Downloads

2

Readme

Everledger JavaScript build toolchain

Various modules to assist with developing frontend applications.

Modules list

This repository contains only a singular exposed module, since various pieces of the build system can be tightly dependent on one another. Toplevel directories exist as entrypoints for other modules, so you must ensure that you do not rename them (except in the event of a breaking major version update). External code should require them as @everledger/js-toolchain/devserver and similar.

  • devserver: An Express webserver which wraps Webpack for hot reloading during development, using Babel. This server uses Express instead of our usual Koa simply because that's what Webpack's dev middleware is built for. The server accepts the following environment variables:
    • EXTERNAL_PORT- the port it should listen on.
    • WEBPACK_CONFIG_FILE- path to configuration file to load for Webpack, relative to your project folder.
  • postcss-config: Standard configuration for CSS compilation used in projects. This config ideally does not change from project to project- we will add support for other CSS preprocessors as needed such that our build system can basically digest anything we throw at it.
  • webpack: Contains composable helper functions for generating Webpack configuration objects. See the main webpack-config-helpers.js file for the available imports.
  • rollup: Contains some curried helpers for compiling ES6 in serverside apps.
  • babel: Contains composable helper functions for generating Babel configuration objects. Not usually used directly (though this may be a thing in future)- imported by the webpack helpers in order to build the babel-loader's query object.

Internal use

  • The helpers folder contains some higher-order functional helpers used in various parts of the framework. These shouldn't be used outside of this module.

Usage & examples

For more examples and expected usage of these helpers, see the boilerplate-frontend repository.

The ramda-repl command is highly recommended when developing against this module: npm i -g ramda-repl

To do

  • CSS Compilation
    • Update postcss-import to latest version. @see https://github.com/webpack/webpack/issues/2411#issuecomment-247132992
    • LESS compilation, native SASS compilation & W3C CSS compilation modes via PostCSS (if needed)
  • Frontend build system
    • Break up CSS loader behaviours into smaller composable elements
    • Remove environment variables from postcss-config.js and devserver.js in favour of conversion to composable functions
    • Attempt keeping all Webpack loader modules within this repo and passing them to the parent project using require.resolve()
  • Backend build system
    • Add development script to reboot after a code change
    • Ensure sourcemapping works correctly with debugging