3 ms·
https://facebook.github.io/react/blog/2016/07/22/create-apps-with-no-configuration.html#no-lock-in https://facebook.github.io/react/blog/2016/07/22/create-apps.
by sotojuan 10y ago
https://facebook.github.io/react/blog/2016/07/22/create-apps-with-no-configuration.html#no-lock-in https://facebook.github.io/react/blog/2016/07/22/create-apps...
> “Ejecting” lets you leave the comfort of Create React App setup at any time. You run a single command, and all the build dependencies, configs, and scripts are moved right into your project. At this point you can customize everything you want, but effectively you are forking our configuration and going your own way. If you’re experienced with build tooling and prefer to fine-tune everything to your taste, this lets you use Create React App as a boilerplate generator.
- danabramov 10y agoWe’ll start with extremes (no config vs all config is yours) and see how people use it. Perhaps we’ll add some configuration later but if we do it too early, we might as well become another webpack. Configuration makes it very hard to move forward or swap underlying tools. So we’ll stick with no configuration for as long as we can, and try to figure out a way to solve common problems by other means (e.g. smarter detection, platform-specific code, etc).
- andrewstuart 10y agoPlease Dan keep it zero configuration. If a person knows enough to want to configure, then they have learned enough to venture out on their own via eject. The difference in cognitive load between "zero config" and "some config" is enormous. "zero configuration" === minimal mental model, no scope for misunderstandings, misconfigurations, minimal documentation, almost no scope for user errors and also minimal learning time "some configuration" - even one single switch/option === learning the mental model, understanding, version problems with the old way of configuring, documentation of configuration, potential for errors, old & out of date blog posts on the Internt telling how to do it the old way, beginner pain You will come under constant pressure from people who want to add "just this one teensy option" and will criticize the project for not having it. Resist the criticism - beginners need zero config. The root of all evil in JavaScript development and build systems is configuration.
- koistya 10y agoI just published a similar tool: > npm install -g react-app-tools > react-app new > react-app start The idea is to have no configs (though you will be able to configure anything if needed) and a bare minimum package.json: { "private": true, "dependencies": { "react-app": "^1.0.0", }, "devDependencies": { "react-app-tools": "^1.0.0", }, "scripts": { "build": "react-app build", "start": "react-app start", } }