Web-based Terminal Emulator

A functional web emulator written in react.
I recently created a terminal-based version of Liar's Dice using NodeJS and socket.io. The implementation proved to be quite enjoyable, and I wanted people to be able to play without needing to distribute the client.js file, and require people to install node on their machines.
So I set out to create a web-based terminal emulator, that could run javascript programs as if it were a real terminal. The emulator is written in React, making use of CSS and HTML styling and a modular 'commands' prop object, so new commands can be added on top of existing ones easily.
It features a functional filesystem, context switching for running new programs and QoL commands like clear. A full list of commands can be found with the command help.