Created
July 4, 2016 18:10
-
-
Save CharlieGreenman/a9dea16cbfe0bb6aaf28cd2eab6a05e6 to your computer and use it in GitHub Desktop.
What constitutes a complete front end build system?
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
A good front end build system can consist of various different things. | |
However, I think it can be agreed upon that at it’s core, there are important core features. | |
1. Run time | |
2. Tree shaking | |
3. Hot reloading | |
4. Minification | |
5. Compilation Time | |
6. Introduction of new module to core build system | |
7. Package management | |
8. Ease of configuration | |
9. Introduction of new libraries | |
--> E.g. lodash, css-modules | |
There are in addition to this, tasks that need to be run: | |
1. Templating | |
2. Linting | |
3. Testing | |
a. Mocha, Chai, Sinon, Jasmine, Jest. | |
b. Pre-Commit | |
c. PhantomJS | |
4. Server | |
In addition, there are popular libraries and pre-processors that should be taken into consideration: | |
1. Sass | |
a. Css-modules/CSSX | |
b. Auto-prefixer | |
2. Trans-compilation | |
a. Babel | |
b. Es7 | |
c. Typescript | |
3. Utility libraries | |
a. Lo-dash | |
b. Underscore | |
4. BrowserSync | |
I am always looking to update this list, and/or refine it. Comments are always welcome :) | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment