This is an app I wrote for SharePoint Framework (SPFx) using React and TypeScript. This one is almost identical. I had to make a few minor adjustments to the CSS because these apps run inside pages that already have some CSS applied to them and it has a cascading effect on the app. This one uses React and TypeScript, just like the original. The remote data source is no longer connected. This one stores the data in JSON files in the app.