JSFiddle - React, Tailwind, and code Playground

HTML

<html ng-app>
<head>
<script src="http://code.angularjs.org/1.0.0rc9/angular-1.0.0rc9.min.js" type="text/javascript"></script>
</head>
<body>
<div id="main" ng-controller="Ctrl">

    <table cellpadding="20">
        <tr>
            <th ng-repeat="(head, value) in models[0]"><span>{{head}}</span></th>
        </tr>
        <tr ng-repeat="row in models">
            <td ng-repeat="(name, value) in row" ng-scope>
                <span ng-click="editing = true" ng-hide="editing" ng-bind="row[name]"></span>
                <input ng-model="row[name]" ng-show="editing" />
                <button ng-click="editing = false" ng-show="editing">ok</button>
            </td>    
        </tr>
    </table>

</div>

<script type="text/javascript">    
    
    function Ctrl($scope) {
          $scope.models = [
                {name:"Bob",age:25, city:"NewYork"},
                {name:"Bob",age:25, city:"NewYork"},
                {name:"Bob",age:25, city:"NewYork"},
                {name:"Bob",age:25, city:"NewYork"}
        ];
    }    
</script>
</body>
</html>

CSS

td > span, th>span {
    display:block;
    padding:20px;
}
th > span {
    background-color:#eee;
}
table td, table th {
    border:1px solid grey;
    }
table {
    width:100%;
}

#main {
    padding:20px;
}