I really like the idea of cloud IDE's, but practically it's difficult to bring the entire development environment on cloud/browser, and even more difficult when switching from Vim.
Anyways, I really appreciate the efforts you are putting in this project. Congrats guys/gals, job well done.
What advantage do you see versus just the ability to edit remote files (which has been around for decades) or sync local files with a server (a.k.a. "cloud storage")? Why suffer the UI limitations (solvable), latency (not solvable), and unreliability (not solvable) of having your development environment sitting on a server somewhere?
I find my self writing code in VIM via ssh using tmux and works fine. You can do pretty much everything on CLI, so I don't see how this is a substitute for VIM when all you need in order to write VIM/emcas code is a remote (secure) shell.
That said, vim is not an IDE, although many prefer (me included) prefer it over an IDE.
I wonder though if something like Vim.js [2] couldn't start to get closer to making this a practical tool for my workflow. Between that and having offline support / native app to use, there'd certainly be a lot of benefits. Ultimately though, I think the #1 thing it'd come down to is lag; if there's lag (like ever, including trying to launch the program, when I'm offline, or while I'm typing), it can't be my primary development environment without constant annoyance.
The only way it will get done is using a true, automatable port, maybe using Native Client or asm.js.
Until then, I'm reluctantly sticking to Vim in a local shell.
And what's particularly nice is that the cloud IDE and desktop IDE can share 95% of their codebox.
As a result you have an IDE built with web technologies (JS, HTML, CSS, NodeJS) that can run virtually anywhere (desktop, public/private cloud) and you can iterate quickly thanks to the nature of web technologies.
http://msdn.microsoft.com/en-us/library/dn135229.aspx
One of the nice things about TFS is the whole shelving things, it doesn't pass the tests yet, but you want to switch machines, makes it a lot easier than having some personal branch / patch set etc.
That's a nice idea, and Codebox could do that, Codebox.io actually users Docker behind the scenes by the way. So those VMs could be moved to the desktop as well.
Open up and issue on GitHub and let's talk about this.
What I couldn't find at first glance though is: what programming languages are supported by this IDE?
The IDE itself isn't tied to specific VMs, it can run on your own server, your own desktop/laptop or our cloud.
We provide stacks for our cloud solution https://www.codebox.io/.
We provide stacks and VMs for all common languages and frameworks (PHP, Java, Dart, Node.js, Python, Ruby, Go, C/C++, Lua) as of right now.
The community can also contribute new stacks providing support for other languages.
Hope this helps :)
Oh, and Rust support would be awesome. But I guess that's too early.
/edit: I like that it runs cmatrix in my browser: http://i.imgur.com/ZDiJ5Tw.png ;)
So expect this to evolve quickly over the next few weeks. And obviously now that it's open source anyone can help improve the project :)
Not sure if it's intentional but the license (apache2) link on GitHub goes to the docs folder rather than the license text/ definition.
I'll try to get working on those, when I've finished a few other things with a higher priority.
Maybe you could help contribute to that ?
npm install -g
I'm seeing this regularly in node.js projects. Why is it common to install globally and, well, crap up your system like that?Are they running each app in a separate container/vm? This one seems to made for desktop though.
Installing libraries globally would be a problem, but it doesn't seem like this is what Codebox is doing.
On our cloud service (https://www.codebox.io) we do run each app in a seperate container/VM of course.
If you don't want global state you could use a VM?
It's global because it is not per project. For example, I don't want to install a tool in every folder that I might happen to use it in. (Or bother setting paths and symlinks)
However we have a big emphasis on modularity, ease of use. We have a Desktop app (linux/mac) coming in the pipes.
Our cloud version has offline support (so you can code even when the network cuts).
And a handful of other things. For example our hosting platform supports stacks (swappable VM images), that allow us to provide our clients with tailored environments to suit their needs (languages & frameworks they use).
Overall Codebox & Cloud9 are both interesting projects. And the Cloud9 team has definitely built some interesting stuff as well.
Thank you for keeping your source open. Interesting to poke around in the internals.
Error creating this box
Error: undefined: <!DOCTYPE html> <html> <head> <style type="text/css"> html, body, iframe { margin: 0; padding: 0; height: 100%; } iframe { display: block; width: 100%; border: none; } </style> <title>Application Error</title> </head> <body> <iframe src="https://sx0z2mmmtv96.statuspage.io/heroku/error">
Application Error</p> </iframe> </body> </html>
1) I signed up via github oauth
2) I created a new "public" box with a python stack
3) Clicked "start editing"
The app says "PREPARING YOUR WORKSPACE" and then asks me for a password (via http auth.) If you're asking for my github password, you're not going to get it... Then again, you probably aren't, so I'm clueless as to what to put there.
I'm really sorry for the inconvenience, I'm on it now.
Check codebox.io in a few hours when I'll have had time to deal with the load issues.
Codebox is on NPM, here : https://npmjs.org/package/codebox.
Try clearing your cache and give it another try, it seems to be some issue on NPM's side.
Also Tried the cache clear, didn't do anything.
Nevermind, will pass on that. Seems to be a great work btw, will try again in a few months :)
Edit : I had to npm config set registry http://registry.npmjs.org/ and it's working now.
I installed by cloning and cd into repo, ran npm install.
I did not do "npm install -g codebox" because I wanted all the files in a specific directory. Therefore, I'm not using the codebox command that is supplied in the readme. I wanted to start it by running 'node __somefile__'
https://github.com/FriendCode/codebox/blob/master/bin/codebo...
I thought that maybe I had missed a dialog box with a user/pass, so I went to delete my test box and create a new one. But nothing happens when I click the delete button for my one box.
I'm doing my best to restore the service back as soon as possible, stay tuned I'll update this comment and follow our twitter feed @CodeboxIO
Error: HTTP ERROR 200: Error: connect ECONNREFUSED at errnoException (net.js:770:11) at Object.afterConnect [as oncomplete] (net.js:761:19) ERROR: Loadfire does not know how to handle that request
1. NPM install failed.
2. Registering for an account with github failed the first time.
3 Creating a workspace failed.
4. 'Start Editing' is now asking for a password.
This is not a great first showing for a concept as critical as an IDE. I was genuinely excited to try this but cant trust this until it bakes for a few more months.