A guide to the configuration files for this project: where they live and what they do.
The root folder
.editorconfig: Sets the default configuration for certain files across editors. (e.g. indentation)
.gitattributes: Normalizes how
git, the version control system this boilerplate uses, handles certain files.
gitto ignore certain files and folders which don't need to be version controlled, like the build folder.
appveyor.yml: Continuous Integration configuration
This boilerplate uses Travis CI for Linux environments and AppVeyor for Windows platforms, but feel free to swap either out for your own choice of CI.
npmconfiguration file has three functions:
- It's where Babel and ESLint are configured
- It's the API for the project: a consistent interface for all its controls
- It lists the project's package dependencies
Baking the config in is a slightly unusual set-up, but it allows us to keep the project root as uncluttered and grokkable-at-a-glance as possible.
This is where the bulk of the tooling configuration lives, broken out into recognisable units of work.
Feel free to change anything you like but don't be afraid to ask upfront whether you should: build systems are easy to break!