JQTerminal

A Unix-like terminal, written in Javascript.

Demo (Try It Out!)


Frequently Asqued Questions (F.A.Q)

  1. Introduction

  2. Can I use it on my page?

  3. License

  4. Making your own commands

  5. Default Commands

  6. How to use

  7. Can I do anything interesting with it?

  8. Regarding Issues

1. Ok. So, what is it?

JQTerminal is an application that emulates a Unix terminal. It emulates as much as possible of the way a unix shell works. To that end it implements some of the commands that you will find in a typicall Unix shell such as cat, man and echo (go to point 5 for a comprehensive list). The commands already written are not hardcoded into the main logic and instead implemented in the form of plugins. It is possible to write your own commands

2. Can I use it on my page?

You can, as long as you respect the license.

3. What license?

As stated in the source files, JQTerminal is under the BSD-2-Clause License. It's a fairly permissive license. It basically says you can do anything you want with the program provided you respect the following conditions:

A copy of the license can be found in the OSI website.

4. Can I make my own commands?

You are wellcome to do so. JQTerminal was designed with the goal of being extensible in mind.

5. Which commands are already implemented?

man - Find information about a specific command.
clear - Clear the console.
ls - List directory contents.
cat - Concatenate files and print on the standard output. (concatenation remains unimplemented)
echo - Print messages on the standard output (supports environment variables).
shutdown / reboot - Destroy the console.
export - export an environment variable
color - change the terminal's background color

6. I just want to use it on my page. How do I do that?

You might want to check out the tutorial pages.

7. Can I do anything interesting with it?

That depends on your definition of interesting. I made a page inspired on the iconic "hacking" scene of Jurassic Park using this terminal. You might find that amusing.

8. I've spotted an issue. How do I report it?

GitHub has a nice feature called "issues". You can use it to report any problem with the application. If it's really an issue, I'll start working on it as soon as I can.