Over a dozen languages are supported for syntax highlighting and execution: Python, PHP, Ruby, Perl, Lua, Java, Clojure, Javascript, C, C++, Julia, Go, Erlang, Haskell.
It's possible to see how the code got written character by character with a feature called Code Playback. It allows reviewing the whole process in a condensed amount of time. Great for interviews to check how the interviewee got to the result.
REPL (read–eval–print loop) enables you to run commands interactively and test ideas out before committing them to code. CodeBunk has a dedicated space for REPL shells in the top-right corner of the interface so they can always be quickly accessed.
You can embed your code in your blog with CodeBunk. The embedded code is synced in realtime and is also runnable. All you have to do is add this to your post:
<div class="codebunk" id="[bunkid]" data-lang="[language]" data-runnable="[true|false]"></div>
You can try the editor and code execution for free without, and get 5 free shared session try-outs when you sign up. Also, if you email team@codebunk.com for trial bunks, they do provide a bunch for free.
Free plan requires you to provide a credit card due to the nature of Cloud 9's "Free Workspaces" to be relatively abused. According to the developers, this is the only way to prevent such.
The terminal package does not work on the Cloud 9 SDK in Windows because it cannot find an appropriate unix shell. This might be a recurring bug undergoing fixes.
Cloud9 gives full terminal access to home directory. In their hosted Linux Ubuntu environment it has sudo powers. No UNIX commands have been blocked - npm, ifconfig, chmod, chown, tar, etc work. All commands can be accessed and any package can be installed.
And if the terminal is used when using Remote SSH feature it connects directly to the server and runs the commands on that server.
Cloud9 uses their own editor called ACE. Besides the basics, it covers most important advanced code editor features such as code folding, converting cases, auto-completion, code analysis and refactoring, regex search and offers easy access to relevant documentation.
It also gives access to the CLI, has support for Vim and Emacs keybindings, includes multiple cursors and zen coding mode that removes all distractions and allows focusing on code.
An important feature of Cloud9 is the real-time collaboration ability. It allows pairing programs or perform code reviews really easily as well as simultaneously text chat.
By installing and running a client application that syncs the local file system and cloud storage Cloud9 can be run locally. Great alternative for situations when the Internet connection is unreliable.
Since Cloud9 is an open source project with source code available on GitHub, it can be run as a self-hosted solution on own hardware and behind a firewall.
Git and hg commands can be run in the command-line, the same way as in a local terminal. There are also built-in add-on services for GitHub, BitBucket and GitLab.
The runner has built-in functionality fo Apache, Node, Python, Ruby, Ruby on Rails, Go, CoffeeScript, Julia, Mocha and Shell script, but any other language can be used by creating a runner for it.
Prior to the Cloud9 core source code being released, an Alpha version of a desktop version can be built from the source which is based from NW.js. Instructions can be found here.
Allows you to connect directly to your external server via SSH. Modifying files directly on your server using a cloud based editor allows you to have the portability of the a cloud based workspace with the control of your own server (including complete DNS control).
Breakpoints allow specifying a stopping points in the execution of the application. When these breakpoints are hit, the application will stop executing and give the ability to examine data such as local variables, run commands and control the execution flow of the application.
Cloud9 provides one free private workspace. However, I can host multiple projects there by cloning as many repositories into the root project directory, thanks to the full access terminal.
Similar to package managers for the desktop, Cloud9 also includes their own package manager, c9pm, which allows adding new software from a list of available utilities.
Apt-get can be used in the project's workspace terminal to install/update/upgrade software. Composer, Bower or any other utilities of choice can be installed to manage dependencies and packages.
Cloud9 allows quickly deploying apps via CLI. There are instructions on how to deploy to Azure, CloudFoundry, OpenShift, NodeJitsu, Modulus and Heroku. For example, all hosted environments have Heroku's toolbelt installed by default so all heroku commands are available from the get-go.
Cloud9 can connect to a dedicated VM to provide a powerful Ubuntu runtime environment in the cloud using Docker. Apps can be either run from the run panel where a selection of runners is provided or from a terminal.
Cloud9 allows quickly deploying apps via CLI. There are instructions on how to deploy to Azure, CloudFoundry, OpenShift, NodeJitsu, Modulus and Heroku. For example, all hosted environments have Heroku's toolbelt installed by default so all heroku commands are available from the get-go.
Koding uses the Ace editor that's developed by Cloud9. Besides the basics, it covers most important advanced code editor features such as code folding, converting cases, auto-completion, code analysis and refactoring, regex search and offers easy access to relevant documentation.
It also gives access to the CLI, has support for Vim and Emacs keybindings, includes multiple cursors and zen coding mode that removes all distractions and allows focusing on code.
Koding has a community feature that makes it easy to collaborate and share ideas with like minded developers all over the world. And the community itself is very active and helpful community.
The Koding Package Manager (a successor to Apps) is command line tool for installing packages like nginx, Redis, VNC, Wordpress and many others. It consists of officially supported and user-built packages.
All languages, databases, and command-line tools are supported. Most machines are already set up with web project basics like Apache, PHP, MySQL, Ruby, Node.js, Perl, and Python and anything else can be installed via the SSH root access.
Anyone can get a free virtual machine (VM) with Ubuntu that has root access, apt-get, and many commonly used web tools. The virtual machine disappears after the user has been logged out for 60 minutes.
Codeanywhere has a feature called Share Links, that allows users to collaborate with others on their projects in real-time by simply sharing a link to their work.
Integrates with BitBucket and allows logging in with your BitBucket account. It's possible to launch Codeanywhere from within BitBucket's repo by adding Codeanywhere integration as an add-on.
Codeanywhere allows connecting to a Dropbox or a Google Drive account and pull development files from there making it easy to sync development files across devices.
CodeAnywhere recently partnered up with DigitalOcean. Now users can manage, spin up and provision DigitalOcean droplets all from the CodeAnywhere IDE. This is a great addition for both products, combining the power of an affordable host with the portability and power of CodeAnywhere IDE.
DevBoxes are saveable, fully customizable development environments that run on either Open VZ or Docker and each has a dedicated amount of memory and disk space. Multiple devboxes can be run at the same time.
Codeanywhere relies on right click for major actions but doesn't support this interaction on iPad. Selecting listed Dev box URLs to access site is also unworkable in practice. iPad app allows the actions but has very limited set of Dev box controls. Using an external keyboard with the app can also be problematic as the arrow keys don't work.
Floobits only supports a subset of IDEs and editors available. If you or the people you intend to work with don't use the supported editors, someone needs to switch their preferred environment to use the service.
Collabedit is very basic. There are no integrations, customization options or even code completion. It only provides a bare-bones collaborative editor.