nwb

A toolkit for React, Preact, Inferno & vanilla JS apps, React libraries and other npm modules for the web, with no configuration (until you need it)

OTHER License

Downloads
14K
Stars
5.6K
Committers
33

Bot releases are visible (Hide)

nwb -

Published by insin almost 7 years ago

0.19.2 / 2017-11-09

Fixed

  • Backed out use of preact/debug in favour of preact/devtools, as the debug module tries to override the preact module's render export, which fails due to Webpack enforcing the read-only nature of ES module exports.
nwb -

Published by insin almost 7 years ago

0.19.1 / 2017-11-04

nwb.config.js Config Changes

  • Deprecated the webpack.compat.enzyme flag for Enzyme v2 compatibility settings. Upgrade to Enzyme v3 when you can, which supports React all the way back to v0.13.

Fixed

  • Added 'createClass' and 'createReactClass' to the factory function names React Transform looks for, so React component hot reloading will work for apps using create-react-class, imported as one of those names.

Changed

  • nwb is now also tested against Node 8 now that it's the Long Term Support version.
  • Reverted the Webpack settings change for webpack.compat.enzyme config in v0.19.0, as it only applied while the version numbers of published React packages were out of sync. The compatibility settings assume Enzyme v2 and React >= v15.5.
  • style-loader's new hmr option is set to false when creating builds to prevent inclusion of its HMR code.

Dependencies

  • autoprefixer: v7.1.4 → v7.1.6
  • babel-plugin-inferno: v3.2.0 → v3.3.0
  • babel-plugin-transform-react-remove-prop-types: v0.4.8 → v0.4.10
  • babel-preset-env: v1.6.0 → v1.6.1
  • copy-webpack-plugin: v4.1.0 → v4.2.0
  • extract-text-webpack-plugin: v3.0.0 → v3.0.2
  • file-loader: v1.1.4 → v1.1.5
  • filesize: v3.5.10 → v3.5.11
  • karma-mocha-reporter: v2.2.4 → v2.2.5
  • karma-webpack: v2.0.4 → v2.0.5
  • phantomjs-prebuilt: v2.1.15 → v2.1.16
  • postcss-loader: v2.0.6 → v2.0.7
  • resolve: v1.4.0 → v1.5.0
  • style-loader: v0.18.2 → v0.19.0
  • url-loader: v0.5.9 → v0.6.2
  • webpack: v3.6.0 → v3.8.1
  • webpack-dev-server: v2.9.1 → v2.9.4
  • webpack-hot-middleware: v2.19.1 → v2.20.0
  • webpack-merge: v4.1.0 → v4.1.1
nwb -

Published by insin about 7 years ago

0.19.0 / 2017-10-02

Breaking Changes

  • Removed hooking of React, Preact and Inferno render() functions in quick commands, as this won't work with ES modules builds (which are used by default in Webpack v3). This affected the current version of Preact at the time of writing.
    • If you're manually using render() with quick commands, you must now handle providing the target DOM node too - document.getElementById('app') is available in the default HTML template.

Added

Changed

  • Now using babel-preset-env instead of deprecated babel-preset-es201X presets [#375]
  • Use beautify: true for webpack.debug output so code split bundles are readable.

Dependencies

  • autoprefixer: v7.1.2 → v7.1.4
  • babel-cli: v6.24.1 → v6.26.0
  • babel-core: v6.24.1 → v6.26.0
  • babel-loader: v7.1.1 → v7.1.2
  • babel-plugin-istanbul: v4.1.4 → v4.1.5
  • babel-plugin-react-transform: v2.0.2 → v3.0.0 - add React.PureComponent to the list of default super classes
  • babel-plugin-transform-react-remove-prop-types: v0.4.6 → v0.4.8
  • babel-polyfill: v6.23.0 → v6.26.0
  • babel-runtime: v6.25.0 → v6.26.0
  • copy-webpack-plugin: v4.0.1 → v4.1.0
  • css-loader: v0.28.4 → v0.28.7
  • file-loader: v0.11.2 → v1.1.4
  • gzip-size: v3.0.0 → v4.0.0 - async interface now uses Promises
  • html-webpack-plugin: v2.29.0 → v2.30.1
  • inquirer: v3.2.1 → v3.3.0
  • karma-mocha-reporter: v2.2.3 → v2.2.4
  • karma: v1.7.0 → v1.7.1
  • mocha: v3.4.2 → v3.5.3
  • phantomjs-prebuilt: v2.1.14 → v2.1.15 - fix security issues with dependencies
  • webpack-dev-middleware: v1.11.0 → v1.12.0
  • webpack-dev-server: v2.6.1 → v2.9.1
  • webpack-hot-middleware: v2.18.2 → v2.19.0
  • webpack: v3.4.1 → v3.6.0
nwb -

Published by insin about 7 years ago

0.18.10 / 2017-07-27

Fixed

  • Fix dev server HMR for people running on different hosts or a different localhost port [#356] [DethAriel]

Dependencies

  • babel-runtime: v6.23.0 → v6.25.0
  • resolve: v1.3.3 → v1.4.0
  • webpack: v3.4.0 → v3.4.1
nwb -

Published by insin about 7 years ago

0.18.9 / 2017-07-26

Changed

  • Now using preact/debug instead of preact/devtools in quick Preact commands and the Preact project skeleton - requires Preact >= 8.2.0

Dependencies

  • inquirer: v3.2.0 → v3.2.1
  • promise: v8.0.0 → v8.0.1
  • webpack: v3.2.0 → v3.4.0 - bug fixes; now watches for missing directories being added; perf improvements
  • webpack-dev-server: v2.5.1 → v2.6.1
nwb -

Published by insin over 7 years ago

0.18.8 / 2017-07-16

Dependencies

  • promise: v8.0.0 → v8.0.1
  • webpack: v3.2.0 → v3.3.0 - bug fixes; now watches for missing directories being added
nwb -

Published by insin over 7 years ago

0.18.7 / 2017-07-12

Changed

Dependencies

  • extract-text-webpack-plugin: v3.0.0-rc.2 → v3.0.0
  • webpack: v3.1.0 → v3.2.0 - bug fixes

Documentation

nwb -

Published by insin over 7 years ago

0.18.6 / 2017-07-10

Dependencies

  • extract-text-webpack-plugin: v3.0.0-rc.1 → v3.0.0-rc.2 - fix module sorting type error
  • inquirer: v3.1.1→ v3.2.0
nwb -

Published by insin over 7 years ago

0.18.5 / 2017-07-09

Dependencies

  • extract-text-webpack-plugin: v3.0.0-beta.3 → v3.0.0-rc.1
  • karma-webpack: v2.0.3 → v2.0.4 - Webpack 3 support
  • webpack-dev-server: v2.5.0 → v2.5.1 - Webpack 3 support
nwb -

Published by insin over 7 years ago

0.17.3 / 2017-07-07

Fixed

Backported fixes from 0.18:

  • Fixed use of @import in CSS by adding ident back to postcss-loader config [#311]
  • Fixed display of valid properties when an invalid property is used when configuring a custom webpack.styles rule.
nwb -

Published by insin over 7 years ago

0.18.4 / 2017-07-07

Fixed

  • Fixed use of @import in CSS by adding ident back to postcss-loader config [#311]
  • Fixed config validation error being thrown when using webpack.styles config for custom preprocessor plugin rules [#342]
  • Fixed display of valid properties when an invalid property is used when configuring a custom webpack.styles rule.

Added

  • Added webpack.debug config to trigger creation of a more debuggable production build [#336]

    The recommended way to use this is via a config argument:

    npm run build -- --webpack.debug
    
  • Added support for the following arguments when building a React component's demo:

    • --title - set the generated demo index.html's <title>
    • --vendor - enable creation of a vendor bundle for modules imported from node_modules/ [#335]

Dependencies

  • autoprefixer: v7.1.1 → v7.1.2
  • babel-loader: v7.1.0 → v7.1.1 - don't read .babelrc for cache identifier when babelrc=false (nwb uses this option)
  • chalk: v1.1.3 → v2.0.1
  • extract-text-webpack-plugin: v2.1.2 → v3.0.0-beta.3 - Webpack 3 support
  • html-webpack-plugin: v2.28.0 → v2.29.0 - Webpack 3 support
  • karma-chrome-launcher: v2.1.1 → v2.2.0
  • webpack: v3.0.0 → v3.1.0 - perf boost; fix ordering in ExtractTextPlugin
  • webpack-hot-middleware: v2.18.0 → v2.18.2
nwb -

Published by insin over 7 years ago

0.17.2 / 2017-07-04

Fixed

Backported fixes from 0.18:

  • Fixed display of user config errors when running the development server.
  • Fixed clearing the console by default when running the development server.
  • Quick build command config was being created before the default NODE_ENV = production was applied, so output filenames didn't include a chunkhash by default.
  • Fixed config validation error when running the development server and using webpack.styles config for custom preprocessor plugin rules.
nwb -

Published by insin over 7 years ago

0.18.3 / 2017-06-22

Fixed

  • Quick build command config was being created before the default NODE_ENV = production was applied, so output filenames didn't include a chunkhash by default.

Dependencies

  • webpack-dev-middleware: v1.10.2 → v1.11.0 - Webpack 3 support
nwb -

Published by insin over 7 years ago

0.18.2 / 2017-06-22

Fixed

  • Fixed clearing the console by default when running the development server.

Dependencies

  • babel-loader: v7.0.0 → v7.1.0 - Webpack 3 support

Documentation

nwb -

Published by insin over 7 years ago

0.18.1 / 2017-06-20

Dependencies

  • npm-install-webpack2-plugin: v5.0.0 → v5.0.1 - fix Webpack 3 support
nwb -

Published by insin over 7 years ago

0.18.0 / 2017-06-20

Breaking Changes

Fixed

  • Fixed display of user config errors when running the dev server.

Added

Changed

Dependencies

  • inquirer: v3.1.0→ v3.1.1
  • npm-install-webpack2-plugin: v4.1.1 → v5.0.0 - drop Webpack 1 and add Webpack 3 to peerDeps
  • promise: v7.3.0 → v8.0.0
  • webpack: v2.6.1 → v3.0.0
  • webpack-dev-server: v2.4.5 → v2.5.0
nwb -

Published by insin over 7 years ago

0.17.1 / 2017-06-19

Fixed

  • Fixed using a custom port for the dev server - Webpack Dev Server's client didn't like the format we were specifying the URL for the Hot Module Reloading connection in [#328]
  • Use the correct protocol in the 'The app is running at...' successful compilation message when using HTTPS.
nwb -

Published by insin over 7 years ago

0.17.0 / 2017-06-17

Breaking Changes

  • Now using Webpack Dev Server (instead of running a basic Express development server).

    Webpack Dev Server has security features which you may need to configure your way around if you're using --host or if your development setup involves hitting the dev server from a different host.

    Please create an issue if you're affected by this change and there's something nwb can do to mitigate dev server problems without compromising security.

React components/libraries

  • A --[keep-]proptypes flag replaces --no[-wrap]-proptypes to disable wrapping of propTypes in React component project builds so they'll be stripped from a production build.

Fixed

  • The process will now exit with a non-zero code when a Webpack build completes with errors [#290]
  • Fixed transpiling of ES2017 features when use of a stage-X preset is disabled with babel.stage = false config.
  • Fixed hmre = false Express middleware option for disabling use of React Transform to attempt to handle Hot Module Reloading for React components and render() error display [#263]

Preact

  • Fixed importing React components when serving a Preact app - this was missed when fixing preact-compat configuration issues from v0.16.0.

Added

Arguments

Commands

  • Added an nwb web (run|build) command for quick development with vanilla JavaScript (i.e. you're in charge of rendering).

Configuration

  • Added devServer config to configure Webpack Dev Server options, which include:
    • devServer.historyApiFallback.disableDotRule can be enabled if you need to use dots in your path when using the HTML5 History API
    • devServer.https can be used to enable HTTPS
    • devServer.proxy can be used to proxy certain URLs to a separate API backend development server
  • Added a type option to nwb's Express middleware to set the project type (one of react, preact, inferno or web) manually, enabling use of the middleware without a config file.

React

Changed

npm modules

  • Default Babel config for react-component and web-module projects now uses babel-preset-stage-1, so you can use export extensions by default if you need to re-export a library's modules in src/index.js [#284]
  • Default Travis CI config for react-component and web-module projects now only uses Node 6 by default for quicker builds.

Preact

  • preact/devtools is now imported in development mode to enable use of React Developer Tools when using nwb preact run. This has also been added to the preact-app template.

    For existing Preact apps, add the following to its entry point to enable this:

    if (process.env.NODE_ENV === 'development') {
      require('preact/devtools')
    }
    

React components/libraries

  • prop-types imports are now also removed from React component UMD production builds.

Documentation

Dependencies

  • babel-core: v6.24.1 → v6.25.0
  • babel-plugin-transform-react-remove-prop-types: v0.4.5 → v0.4.6 - fix use in Node 4
  • babel-preset-es2017: v6.24.1
  • detect-port: v1.1.3 → v1.2.1
  • extract-text-webpack-plugin: v2.1.0 → v2.1.2
  • file-loader: v0.11.1 → v0.11.2 - publicPath option changes
  • inquirer: v3.0.6 → v3.1.0
  • ora: v1.2.0 → v1.3.0
  • postcss-loader: v2.0.5 → v2.0.6
  • promise: v7.1.1 → v7.3.0
  • style-loader: v0.18.1 → v0.18.2
  • url-loader: v0.5.8 → v0.5.9
  • webpack-dev-server: v2.4.5
nwb -

Published by insin over 7 years ago

0.16.3 / 2017-05-31

Dependencies:

  • case-sensitive-paths-webpack-plugin: v2.0.0 → v2.1.1 - don't intercept Webpack "File not found" error, resolve issue with not recognising when a new file is added
nwb -

Published by insin over 7 years ago

0.16.2 / 2017-05-31

Fixed:

  • Fixed validation of webpack.styles config to allow it to be set to false [#312] [seanofw]

Dependencies:

  • css-loader: v0.28.3 → v0.28.4 - preserve leading underscore in class names
Package Rankings
Top 1.04% on Npmjs.org
Badges
Extracted from project README
Travis Appveyor npm package Coveralls
Related Projects