All Projects → shellscape → Webpack Nano

shellscape / Webpack Nano

Licence: mpl-2.0
A teensy, squeaky 🐤 clean Webpack CLI

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Webpack Nano

Minimp3
Minimalistic MP3 decoder single header library
Stars: ✭ 898 (+351.26%)
Mutual labels:  tiny, small, minimal
Mhy
🧩 A zero-config, out-of-the-box, multi-purpose toolbox and development environment
Stars: ✭ 128 (-35.68%)
Mutual labels:  webpack, cli
Create Elm App
🍃 Create Elm apps with zero configuration
Stars: ✭ 1,650 (+729.15%)
Mutual labels:  webpack, cli
Styled React Boilerplate
Minimal & Modern boilerplate for building apps with React & styled-components
Stars: ✭ 198 (-0.5%)
Mutual labels:  webpack, minimal
Easywebpack Cli
A Powerful Cross-platform Webpack CLI Tool
Stars: ✭ 110 (-44.72%)
Mutual labels:  webpack, cli
Nutmeg
Build, test, and publish vanilla Web Components with a little spice
Stars: ✭ 111 (-44.22%)
Mutual labels:  webpack, cli
Expo Cli
Tools for creating, running, and deploying universal Expo and React Native apps
Stars: ✭ 1,993 (+901.51%)
Mutual labels:  webpack, cli
Dropin Minimal Css
Drop-in switcher for previewing minimal CSS frameworks
Stars: ✭ 1,061 (+433.17%)
Mutual labels:  minimal, minimalist
Circle Flags
A collection of 300+ minimal circular SVG country flags
Stars: ✭ 139 (-30.15%)
Mutual labels:  minimal, minimalist
Hugo Theme Console
A minimal, responsive and light theme for Hugo inspired by Linux console.
Stars: ✭ 143 (-28.14%)
Mutual labels:  minimal, minimalist
Micro Starter
[Deprecated] 🔷 Basic (opinionated) starter kit for a micro app with webpack build
Stars: ✭ 144 (-27.64%)
Mutual labels:  webpack, cli
Cjstoesm
A tool that can transform CommonJS to ESM
Stars: ✭ 109 (-45.23%)
Mutual labels:  webpack, cli
Angular Librarian
An Angular 2+ scaffolding setup for creating libraries
Stars: ✭ 92 (-53.77%)
Mutual labels:  webpack, cli
React Redux Auth0 Kit
Minimal starter boilerplate project with CRA, React, Redux, React Router and Auth0 authentication
Stars: ✭ 115 (-42.21%)
Mutual labels:  webpack, minimal
Angular Cli Webpack
Webpack configuration modifier for @angular/cli
Stars: ✭ 72 (-63.82%)
Mutual labels:  webpack, cli
Seahorse
A minimal CLI framework written in Rust
Stars: ✭ 132 (-33.67%)
Mutual labels:  cli, minimal
Webpack Serve
Takes your webpack config and creates a development server with hot module reloading and error overlay
Stars: ✭ 177 (-11.06%)
Mutual labels:  webpack, cli
Feflow
🚀 A command line tool aims to improve front-end engineer workflow and standard, powered by TypeScript.
Stars: ✭ 942 (+373.37%)
Mutual labels:  webpack, cli
Components
Example Components (Built with Tonic)
Stars: ✭ 42 (-78.89%)
Mutual labels:  minimal, minimalist
Preact Minimal
🚀 Minimal preact structure
Stars: ✭ 136 (-31.66%)
Mutual labels:  webpack, minimal
webpack-nano

webpack-nano tests cover size libera manifesto

A teensy, squeaky 🐤 clean Webpack CLI

webpack-nano operates on the premise that all options for configuring a webpack build are set via a config file.

Install

Using npm:

npm install webpack-nano --save-dev

Requirements

webpack-nano is an evergreen module. 🌲 This module requires an Active LTS Node version (v10.0.0+).

Benefits

  • Holy bananas 🍌 it's itsy bitsy
  • Doesn't hit you over the head with an avalanche of flags and options
  • Allows any number of user-defined flags
  • It does one thing: tells webpack to start a build
  • ~90% smaller than webpack-cli and webpack-command

Usage

$ npx wp --help

  Usage
    $ wp [...options]

  Options
    --config          A path to a webpack config file
    --config.{name}   A path to a webpack config file, and the config name to run
    --json            Emit bundle information as JSON
    --help            Displays this message
    --silent          Instruct the CLI to produce no console output
    --version         Displays webpack-nano and webpack versions

  Examples
    $ wp
    $ wp --help
    $ wp --config webpack.config.js
    $ wp --config.serve webpack.config.js

Custom Flags

With webpack-cli users are limited as to the flags they can use on with the $ webpack binary, and are instructed to use the --env flag for custom data. Well that's just 🍌🍌. With webpack-nano users can specify an unlimited number of custom flags, without restriction.

Say you have a bundle which can be built to use different asset locations from cloud data sources, like Amazon S3 or Google Cloud Storage. And in this scenario you prefer to specify that location using a command-line flag. If you were using webpack-cli, you'd have to use the --env.source flag (or you'd get a big 'ol error) and use a function for your webpack.config.js export. Using webpack-nano:

$ wp --config webpack.config.js --source s3
// webpack.config.js
const argv = require('webpack-nano/argv');

const { source } = argv;

module.exports = {
  ...
}

✨ Magic. The webpack-nano/argv export provides quick and easy access to parsed command-line arguments, allowing the user to define the CLI experience as they want to.

Special Configuration File Types

Webpack configuration files can be written using a variety of module loaders. e.g. Babel or TypeScript. webpack-nano allows users to use file types like webpack.config.babel.js, webpack.config.es6, webpack.config.mjs, and webpack.config.ts. Users are responsible for installing a compatible module loader when using these special file types. The table below represents the supported file types and their compatible loaders:

Extension Compatible Loaders
.babel.js @babel/register, babel-register, babel-core/register, babel/register
.babel.ts @babel/register
.es6 @babel/register
.mjs @babel/register
.ts ts-node/register, typescript-node/register, typescript-register, typescript-require

Build Stats

This project attempts not to make assumptions about how a build should behave, and that includes webpack stats. By default, webpack-nano will apply two stats options: colors (based on supports-color and exclude: ['node_modules']). These can be quickly overridden by including these key/values in your stats configuration.

Meta

CONTRIBUTING

LICENSE (Mozilla Public License)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].