Various modules to assist with developing frontend applications.
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.jsfile 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
webpackhelpers in order to build the
helpersfolder contains some higher-order functional helpers used in various parts of the framework. These shouldn't be used outside of this module.
For more examples and expected usage of these helpers, see the
ramda-repl command is highly recommended when developing against this module:
npm i -g ramda-repl
postcss-importto latest version. @see https://github.com/webpack/webpack/issues/2411#issuecomment-247132992
devserver.jsin favour of conversion to composable functions