add helpful readme info

This commit is contained in:
Kent C. Dodds 2016-08-22 13:43:04 -06:00
parent f4f790ef76
commit d229e59440

View File

@ -1,5 +1,10 @@
# Vanilla JavaScript TodoMVC Example
[![MIT License][license-badge]][LICENSE]
[![Donate][donate-badge]][donate]
![Star on GitHub][github-star-badge]
![Tweet][twitter-badge]
## Purpose
This was originally part of [an ES6 training](http://kcd.im/es6-intro-slides) by [Kent C. Dodds](https://twitter.com/kentcdodds)
@ -13,6 +18,14 @@ Now I'm using it to teach people about [Webpack](http://webpack.github.io/):
This codebase was originally taken from the TodoMVC project starting [here](https://github.com/tastejs/todomvc/tree/563d1e1b8cee5f6ec962ec43663cb66a72b69d76/examples/vanillajs). Big thanks to them!
## Latest Workshop
This repo has been used to teach in several different places (egghead, Frontend Masters, etc.). If you're coming here
to follow along with that, then I recommend you follow the project setup for that (see below). The most recent and
up-to-date version of the workshop is [the Frontend Masters workshop](http://kcd.im/fem-webpack). This is a linear
workshop and starts with the `FEM/00-original-project` branch. See
[the slides](https://slides.com/kentcdodds/webpack-deep-dive).
## Project Setup
This project assumes you have [NodeJS v6](http://nodejs.org/) or greater installed. You should
@ -48,6 +61,35 @@ You might find it helpful to see a list of the available branches. Run: `git bra
Because Webpack 2 is currently in beta, there are issues with `peerDependencies`, so youll have to use npm version 3 to be able to install the dependencies.
### Updates
The ecosystem moves fast. So this section of the README will be dedicated to tracking changes in the ecosystem so you
can follow the repo, but be aware of changes in the latest versions of the dependencies you'll be installing (or if
there are better dependencies to use now).
- All courses
- `babel-preset-es2015-webpack` is no longer necessary for leveraging tree shaking. You can now just use
`babel-preset-es2015` with a special configuration to indicate modules should not be transformed.
[More info](https://github.com/kentcdodds/es6-todomvc/issues/13)
- Egghead Course
- Using `istanbul` is no longer necessary for checking code coverage and can actually be accomplished using special
configuration in `karma.conf.js` with the `karma-coverage` plugin like
[this](https://github.com/kentcdodds/es6-todomvc/blob/f4f790ef7602bf9de4620841848d91f5213e647e/karma.conf.js#L22-L29).
### Contributing
Super nice that you're interested in contributing. Unfortunately things are pretty complex with how things are set up
with branches for each section of the workshop. So feel free to file pull requests to indicate what needs to be changed
but if I decide to implement a change in the workshop code, I'll probably just have to manually make the updates.
Thanks!
## LICENSE
MIT
[license-badge]: https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square
[license]: https://github.com/kentcdodds/p-s/blob/master/LICENSE
[donate-badge]: https://img.shields.io/badge/%EF%BC%84-support-green.svg?style=flat-square
[donate]: http://kcd.im/donate
[github-star-badge]: https://img.shields.io/github/stars/kentcdodds/es6-todomvc.svg?style=social&label=Star
[twitter-badge]: https://img.shields.io/twitter/url/https/kcd.im/webpack-workshop-repo.svg?style=social