kiki-bundler
TypeScript icon, indicating that this package has built-in type declarations

1.9.3 • Public • Published

Build Status

Kiki Bundler

Kiki-Bundler is an opiniated frontend bundler, providing a great out-of-the-box bundling experience with minimal configuration need.

At work we got frustrated with slow watch-tasks, when tools don't support incremental building (except for rollup, which is awesome!). Having recently inherited a huge legacy project with a lot of different root scss files, we needed something faster. The existing code used grunt which took up to 10s to compile.

These simple benchmarks were taken on my Macbook Pro 13" 2016.

Tool Compiler Complete Build incremental Build
grunt-contrib-sass Ruby-Sass 10s 10s
grunt-sass Libsass 2.1s 1.8s
kiki + autoprefixer Libsass 1.8s 150 - 300ms

So yeah, kiki is a LOT faster even with autoprefixer included.

Currently only sass compilation is supported, but support for javascript via rollup or webpack is planned.

Usage

npm install --save-dev kiki-bundler

Add a config called kiki.config.json at the project root:

{
  "sass": {
    "src": "path/to/my/scss",
    "dest": "path/for/compiled/output"
  }
}

Add kiki to your npm scripts in your package.json:

{
  "scripts": {
    "build": "kiki build",
    "watch": "kiki watch"
  }
}

Configuration Options

Sass

Option type default Description
src string null Path to scss root directory
dest string null Path to output directory
addVendorPrefixes boolean true automatic vendor prefix insertion via autoprefixer
cssnext boolean false use tomorrows css features today

CLI-Arguments

Usage: kiki <command> [options]
 
Commands:
  watch  Watch for file changes and compile immediately
  build  Build minified production files
 
Options:
  -c, --config   Path to config file      [string] [default: "kiki.config.json"]
  --production   Force production builds
  -v, --version  Show version number                                   [boolean]
  -h, --help     Show help                                             [boolean]
 
Examples:
  kiki build -c myconfig.json
 
Copyright 2016 Marvin Hagemeister

Why the name?

At work we have quite a football table culture (which is called Kicker in German) and some of us even play in the german football table league. It only made sense to name the tools we use daily accordingly.

Readme

Keywords

none

Package Sidebar

Install

npm i kiki-bundler

Weekly Downloads

3

Version

1.9.3

License

MIT

Last publish

Collaborators

  • marvinhagemeister