You can see the code in action here (Make sure you execute it with ES6/Babel selected in the middle). I did not write that code, I am just going to explain it inline after each important concept.
The example is a simple TODOs app with 3 components:
The first rendered interface looks like:
The initial list renders with test items “red” and “blue”, then you can use the “Add” button to add more items to the list.
Thanks for reading!