Sagui is a modern approach on build infrastructure to front-end projects. It follows an opinionated convention over configuration approach, providing a solid foundation so that you can focus on writing your code.
Right off of the bat you get:
- JavaScript 2015 language support;
- Automated testing;
- Linting via JavaScript Standard Style;
- Build and development infrastructure;
- Live-reload via "hot module replacement".
In simpler terms, it is your last devDependency!
- No more generators;
- No more boiletplate projects;
- No more starter kits;
- No more strange global dependencies. Just
nodeandnpm.
Note: Still early in development, and might miss something that you want.
Create a new NPM project:
npm init -y .Install sagui in the project:
npm install --save-dev saguiAfter the install is completed, Sagui bootstraps its basic infrastructure:
$ tree
.
├── node_modules
│ └── sagui
├── package.json
└── src
├── index.html
├── index.js
├── index.scss
└── index.spec.jsStart developing!
npm startRun the tests!
num testSagui manages the package.json scripts for you, creating additional tasks such as:
npm run sagui:testnpm run sagui:test-watchnpm run sagui:develop
Then you can start writing your code inside the src/ folder.
Sagui is made possible by a bunch of pretty awesome projects:
But the idea is that you shouldn't worry about that.
It is an idea I had in mind for a while, and after seeing a similar approach internally at Klarna (in the form of a global tool), I've got inspired to build a simpler (and locally installed) version of my own.
The internals were based on:
The first version of this project was supposed to be a project bootstrap, you can still check its original implementation at the 1.x.x branch.