1. Things to be considered
- Editor
- Which one?
- Which plugins?
- Use built in terminal? Editor config
- Module format
- HTML generation
- Minify?
- Use plugin?
- Inject prod only concerns?
- Templating language?
- Transpiling
- Native ES or diff language?
- Use experimental features?
- Which plugins?
- Production vs dev config
- Bundler
- Webpack, Browserify, Rollup...
- Linting
- Which linter?
- Enable which rules? Warning or error?
- Which plugins?
- Use a preset?
- Testing
- Framework?
- Assertion Library?
- Helpers?
- Test file location?
- File naming?
- What environment?
- Mocking?
- Code Coverage
- Continuous Integration
- Project structure
- By file type or feature?
- Centralize API?
- Allow Inline JS?
- Extract to POJOs?
- HTTP
- Library
- Mock schema format
- Mock data generation
- Mock server
- Production build
- Minification
- Sourcemaps
- Bundle splitting
- Cache busting
- Error logging
1.1. What belongs in Starter Kit
- Package Management
- Bundling
- Minification
- Sourcemaps
- Transpiling
- Dynamic HTML Generation
- Centralized HTTP
- Mock API framework
- Component libraries
- Development Webserver
- Linting
- Automated testing
- Continuous Integration
- Automated build
- Automated deployment
- Working example app