<div id="mount-point"></div>
body { 
  background: #bdc3c7;
  padding: 40px; 
}
.counter {
  width: 300px;
  margin: auto;
  background: #9b59b6;
  color: white;
  padding: 20px;
  text-align: center;
  h1 {
    margin: 0;
    padding: 20px;
    font-size: 36px;
  }
  button {
    background: #f1c40f;
    border: 0;
    box-shadow: 0px 5px 0px darken(#f1c40f, 20%);
    padding: 20px;
    width: 100%;
    outline: none;
    border-radius: 3px;
    color: darken(#8e44ad, 10%);
    font-weight: bold;
  }
}
View Compiled
/** @jsx React.DOM */

var Counter = React.createClass({
  incrementCount: function(){
    this.setState({
      count: this.state.count + 1
    });
  },
  getInitialState: function(){
     return {
       count: 0
     }
  },
  render: function(){
    return (
      <div className="counter">
        <h1>{this.state.count}</h1>
        <button type="button" onClick={this.incrementCount}>Increment</button>
      </div>
    );
  }
});

React.renderComponent(<Counter/>, document.getElementById('mount-point'));

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://codepen.io/chriscoyier/pen/yIgqi.js
  2. https://cdnjs.cloudflare.com/ajax/libs/react/0.11.1/react.js
  3. https://cdnjs.cloudflare.com/ajax/libs/react/0.11.0/JSXTransformer.js