Configuration hurts. Clipped makes it once only. 💪
- NodeJs >= 8.0.0
npm i -g clipped
- Add a clipped.config.js to your project with content:
module.exports = async clipped => {
// blablabla...
}
- To use presets, search 'clipped-preset` on npm website. Install them as devDependencies and use them:
module.exports = async clipped => {
clipped.config.name = 'magic' // defaults to 'name' property in package.json
await clipped.use(require('clipped-preset-some-preset'))
}
- Run
clipped
to see available actions, and use them!
Most often our configurations are disposable items i.e. we cannot share them across projects. For example we use are likely to use similar loaders and plugins across webpack projects, yet we keep having to rewrite them over and over again.
Clipped makes it so configurations are functions of static configurations and dynamic task runners. You can even use existing projects as preset!
You do not have to use Webpack to use Clipped, feel free to contribute to presets like Rollup, Parcel, Fuse-box... 😊
# Clone the repo
git clone git@github.com:IniZio/usthing-clipped.git
# Install dependencies
npm i
# Watch the project
npm run dev
You are free to make your very own presets and put on your own npm account, but if the preset is for new extensions or build tools, we encourage you to contribute to our presets folder so that others can hurt less as well 😄
WIP 🚧
Made with code and ❤️ by USThing team
Heavily inspired by mozilla-neutrino