Beruflich Dokumente
Kultur Dokumente
Environment
YOU NEED A STARTER KIT
Cory House
@housecor bitnative.com
Do you like to fail fast?
Do you like rapid feedback?
Want to know immediately
when a test is failing?
Overwhelmed by
all the options?
So. Many. Decisions.
Editor Bundler Project structure
Which one? Webpack, Browserify, Rollup… By file type or feature?
Which plugins? Linting Centralize API?
Use built in terminal? Which linter? Allow Inline JS?
Editor config Enable which rules? Extract to POJOs?
Module format Warning or error? HTTP
ES6 Modules, CommonJS… Which plugins? Library
HTML generation Use a preset? Mock schema format
Minify? Testing Mock data generation
Use plugin? Framework? Mock server
Inject prod only concerns? Assertion Library? Production build
Templating language? Helpers? Minification
Transpiling Test file location? Sourcemaps
Native ES or diff language? File naming? Bundle splitting
Use experimental features? What environment? Cache busting
Which plugins? Mocking? Error logging
Production vs dev config Code Coverage
Continuous Integration
Overwhelmed yet?
Make ”best practices”
automatic.
Your team needs a
JavaScript starter kit.
Starter kits speed
development, increase
quality and reduce fatigue.
Why a Starter Kit?
Codifies
- Decisions
- Best practices
- Lessons learned
Encourages consistency
Avoids forgetting important details
Increases quality
- Doing the “right” thing is the easy thing
We can’t.
Dramatic Results
Checklist prevented:
43 infections
8 deaths
$2 million
Doctors know what to do,
but it’s easy to overlook a step.
Developers
Opinion
Boilerplate Build your own
Save time Freedom
Proven Perfect fit for your team
Full-featured No unnecessary complexity
Understand it
Easier to change
What Belongs in Your Starter Kit?
Why?
- Module 9: Continuous Integration
- Module 13: Automated Deploy
Step 1: Install Git
Step 2: Create GitHub Account
Step 3: Create GitHub Repository
Step 4: Clone Repository
Step 4: Clone Repository
1. Stage all the files you changed
git add .
x == y Starter Kit
Seed
Starter Project
The Rhythm
1 2 3
Options Recommendation Implement
Course Outline
1. Intro 7. Bundling
2. Editors and configuration 8. Linting
3. Package management 9. HTTP
4. Development webserver 10. Testing and CI
5. Automation 11. Project structure
6. Transpiling 12. Production build
13. Automated deployment
You need a starter kit
- Reduce decision fatigue