kintsugi

A very opinionated and batteries-included application development toolkit comprising existing Javascript frameworks. Kintsugi combines the best of many tools to create a cohesive system to manage large and complex applications that are broken down into

Usage no npm install needed!

<script type="module">
  import kintsugi from 'https://cdn.skypack.dev/kintsugi';
</script>

README

Kintsugi

A very opinionated and batteries-included application development toolkit comprising existing Javascript frameworks. Kintsugi combines the best of many tools to create a cohesive system to manage large and complex applications that are broken down into many packages. In other words, Kintsugi is to Gulp / Grunt as Google's Repo is to git.

Phases of a Project

Kintsugi manages the development process into build lifecycle phases. These are:

Initialization

  • Scaffold project with sample packages

  • Setup environment

  • Install dependencies

    k init k init -g angular2 k init -g react-redux k init -g react-mobservable

Development

  • Create project symlinks for subset of project and dependencies

  • Watch file changes and transpile source code for subset of project and dependencies

  • Fire up Webpack Dev Server to create in-memory bundle(s)

    k dev k dev foo k dev foo -d 2

Install New Dependent Package

To install dependent package for a specific pacakge, do this inside the package's directory. Every time a NEWER package is installed, all the project's packages dependency versions will be updated.

cd package-a
k install foo bar baz@0.5.0

Scaffold

  • Scaffold new package in the project

    k new foo

Package

  • Build subset of packages or entire project

  • Bundle with Webpack

    k build

Test

  • Watch test file changes and transpile test code

  • Run tests against the transpilation

    k test

Publish

  • Publish artifacts to npm repository (changed)

  • Publish artifacts to file share as tarball

    k publish