the builder, of builders.
enables configs that would take hundreds or thousands of lines, with just a few properties.
const FlipHub = require('fliphub')
new FlipHub({entry: './src/index.js'}).build()
yarn add fliphub
npm i fliphub --save
keep up to date! updated frequently.
one app? two apps? 100 apps? fusebox, rollup, and webpack? nodejs server, inferno, and react? existing configs? happy and no happy pack? at the same time? no sweat.
const FlipHub = require('fliphub')
// take an existing config, flip it to fusebox or rollup or webpack
const config = require('./webpack.config.js')
config.flips = {to: 'fusebox'}
const apps = [
config,
{
name: 'infernod',
entry: './src/index.js',
presets: ['inferno', 'neutrino-preset-happypack', 'web'],
},
{
name: 'backend',
entry: './backend/src',
presets: ['node'],
},
]
FlipHub.init({apps}).build()
const { FlipHub } = require('fliphub')
const apps = [
{
name: 'reacted',
presets: ['react'],
},
{
name: 'infernod',
presets: ['inferno'],
},
]
FlipHub.init({
presets: {
reusable: {
entry: './src/index.js',
flips: {to: 'fusebox'},
},
},
apps,
}).build()
they are configured for each environment by default and can be customized for any config you want
white-list flags are used to filter which apps are run for different operations
const apps = [{
presets: ['alias-resolve', 'neutrino-preset-web', 'eslint'],
}]
const appsWithArgs = [{
presets: {
aliasResolve: __dirname,
presetWeb: null,
eslint: require('./.eslintrc.js')
},
}]
v0 is still available as flipbox but is unmaintained.