Posted On: September 10, 2015

I've always loved the command-line, so I thought it'd be cool to build a command-line website.

It's not the kind of thing that would be useful to the majority of users, but you could have a "Terminal" button that exposes the CLI to power users. Mostly, I just wanted to do it for the sake of doing it.

I didn't look around to see if anyone else did it, this was more of a challenge for myself. I like to challenge myself with projects as a way of learning. I wanted to try backbone, so I used it for the front-end. I ended up going down a rabbit hole and found a tutorial on using RequireJS with Backbone, so I did that.

The front-end is simple, it just parses input from the user and sends it to the backend. It has the ability to prompt the user for input if the backend requests it. I also built in the ability to use the "up" and "down" key to access the command history.

I wanted it to be easy to extend commands so users could write their own commands. Think of it like writing a shell script, but for a website. This is not a command that can only be run from a physical server, this is a command that can be run by anyone with an Internet connection.

What are the possibilities? I don't know, I've only thought of a few.

The Command-Line CMS

You login from the CLI and run commands that communicate with an API to make updates to your website.

Web Based Utilities

Create utilities that you'd normally install on your machine that can be executed via the web.

Command-Line Interface to 3rd Party APIs

Build a CLI to access Instagram, Facebook, or Twitter.

You can view the full project on GitHub.