A simple and highly customisable Unix terminal emulator for React
react-console-emulator
A simple, powerful and highly customisable Unix terminal emulator for React.
Features
- Highly customisable: Add custom responses, restyle and tweak the terminal to your liking and much more.
- A Unix terminal in the browser: Accurately emulate a native Unix terminal in the browser with no setup required.
- Familiar shortcuts: The terminal can keep track of commands and allows the user to recall them at their behest.
- Easy and powerful command system: Execute code from your own application and send the results to the terminal output.
- Async output support: Push output to the terminal at any time, even after a command response has been emitted.
- Unlimited concurrency: Register as many terminals as you like with no risk of input confusion.
Usage
import React from 'react'
import Terminal from 'react-console-emulator'
const commands = {
echo: {
description: 'Echo a passed string.',
usage: 'echo <string>',
fn: function () {
return `${Array.from(arguments).join(' ')}`
}
}
}
export default class MyTerminal extends React.Component {
render () {
return (
<Terminal
commands={commands}
welcomeMessage={'Welcome to the React terminal!'}
promptLabel={'me@React:~$'}
/>
)
}
}