A lot of things are being improved as we speak. We've got a Desktop bundled IDE in the works (Linux/Mac) and I've been working on some more advanced completion and language integration for C/C++, Java and .Net.
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 :)
Definitely interested in contributing, going to get this up on a VM tonight and try and get to grips with how it works. What's the best way to get in touch with you?
npm ERR! Unsupported
npm ERR! Not compatible with your version of node/npm: loadfire@1.3.4
npm ERR! Required: {"node":">=0.8.0"}
npm ERR! Actual: {"npm":"1.1.4","node":"0.6.12"}
enjoyaol@serveur:~/codebox$ uname -a
Linux serveur 3.2.0-55-generic #85-Ubuntu SMP Wed Oct 2 12:29:27 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
Codebox & Cloud9 share some similarities (IDE's built with web technologies).
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.
It might be worth noting that some of the key components used by Codebox are actually developped by Ajax.org (the Cloud9 team) like the ACE code editor component and the vfs system.
Thank you for keeping your source open. Interesting to poke around in the internals.
I was confused for a moment at the app name as I thought this referred to the excellent CodeBox application[1]; I thought maybe that app had been evolved into a full IDE.
I sometimes wonder, can cloud IDE's will really be able to replace traditional code editors like Sublime Text, Vim, Emacs.
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.
Codebox will actually be released as a desktop app as well. And I think that's going to be pretty important to have a truly hybrid IDE that runs both on the desktop and in the cloud.
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.
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 have the same reservations. There are a few notable developers who have blogged in the past abut using Nitrous [1] as their primary development environment, so I'd like to say it's possible.
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.
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?
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.
yeah, same problem here, I'll check back on it later. Either way, nice idea, I like the idea of online/offline. it'll be tough to steal me away from emacs/evil mode though :)
I signed up at codebox.io and when I go to "Start editing" a test box that I created, I get a HTTPAuth login box. Not sure what to enter here, but my codebox.io password doesn't work.
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'd love to see someone build an IDE that lives locally but syncs up to a cloud service so I can pull everything back down to a different machine and work there. I think you could actually do this with Docker, where your "IDE" would not be an editor, but a virtual system with the code, the database, a web server, the right version of Python/Ruby/foo, dependencies, etc., and you could use whatever editor you wanted. As you worked, the app would use Docker to save the state of the world and push it up to the server. It seems like this would get the benefits of cloud IDEs but still provide the low latency and flexibility of working locally. I don't have the time or expertise to build it, but I hope someone will!
Codebox will soon be distributed as a Desktop app as well (it can run perfectly well on Desktop right now but is not packaged).
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.
+1 to this suggestion! Something that feels as seamless as Dropbox would make my dreams come true. And even better if it could sync to different providers of my choosing, e.g. Dropbox, Google Drive, etc. etc.
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.
I really tried to give this a shot but it fell down spectacularly.
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.
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
is there a way to run this on a local machine. from the root, I run "node index.js" and nothing happens. from /core/cb.server, I run "node main.js" and nothing happens.
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__'
The only time I see this is when installing a command-line utility of some kind. For instance, if you install express with -g you can generate an app skeleton.
Installing libraries globally would be a problem, but it doesn't seem like this is what Codebox is doing.
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)
Seems like a cool project, but you might want so consider changing the name, given that CodeBox has been around for years: http://www.shpakovski.com/codebox/
I like the idea of cloud IDE, but I just don't know if they are as flexible as I want them to be, like with adding tools and packages or connecting to staging databases via VPN.
68 comments
[ 4.5 ms ] story [ 126 ms ] threadWhat 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 ;)
I don't think it's an overly common request, but I could definitely add a Rust stack (we already have a Go one).
cmatrix :)
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 ?
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.
npm ERR! Unsupported npm ERR! Not compatible with your version of node/npm: loadfire@1.3.4 npm ERR! Required: {"node":">=0.8.0"} npm ERR! Actual: {"npm":"1.1.4","node":"0.6.12"}
enjoyaol@serveur:~/codebox$ uname -a Linux serveur 3.2.0-55-generic #85-Ubuntu SMP Wed Oct 2 12:29:27 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
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.
[1] http://www.shpakovski.com/codebox/
Sorry, the hosting service is still in beta, I'm actively working on improving it.
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.
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.
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.
[1] https://www.nitrous.io/
[2] http://coolwanglu.github.io/vim.js/web/vim.html
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.
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?
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.
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.
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>
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.
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.
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.
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
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...
Are they running each app in a separate container/vm? This one seems to made for desktop though.
On our cloud service (https://www.codebox.io) we do run each app in a seperate container/VM of course.
Installing libraries globally would be a problem, but it doesn't seem like this is what Codebox is doing.
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)
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