6 ms·
Show HN: Codebox - Open-source cloud and desktop IDE
- kybernetyk 13y agoThe idea of encapsulated VM boxes is intriguing. What I couldn't find at first glance though is: what programming languages are supported by this IDE?
- jgillich 13y agoIt lets me create boxes with PHP, Java, Dart, Node.js, Python, Ruby, Go, C/C++ and Lua.
- deleted 13y ago[deleted]
- AaronO 13y agoHi Aaron from FriendCode speaking (Codebox author), 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/ 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 :)
- kybernetyk 13y agoOh, that's pretty interesting. Going to try this out - maybe this will be the first usable C++ IDE under Linux for me :) 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 http://i.imgur.com/ZDiJ5Tw.png ;)
- AaronO 13y agoI've played with Rust a bit as well (with Mozilla's servo engine) and it's pretty cool. 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 :)
- pvsnp 13y agoAny plans for supporting LXC or similar container solutions. They're much cheaper on the server side if you want to host a solution like this.
- AaronO 13y agoA 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 :)
- talkingquickly 13y agoExactly what I was looking for yesterday researching an interactive programming tutorial I was thinking of putting together. Great timing! Not sure if it's intentional but the license (apache2) link on GitHub goes to the docs folder rather than the license text/ definition.
- AaronO 13y agoRegarding interactive programming. I've got some things in a local branch, that provide some Light table like features. 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 ?
- talkingquickly 13y agoDefinitely 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?
- AaronO 13y agoShoot me an email at aaron DOT omullan AT gmail DOT com
- SamyPesse 13y agoThank you, I just fixed this.
- ritonlajoie 13y agoI have an issue installing this with npm. Here is the error : http://i.imgur.com/7NQo8US.png http://i.imgur.com/7NQo8US.png
- AaronO 13y agoHave you tried clearing your cache (with npm cache clear) ? Codebox is on NPM, here : https://npmjs.org/package/codebox https://npmjs.org/package/codebox. Try clearing your cache and give it another try, it seems to be some issue on NPM's side.
- ritonlajoie 13y agowell, I installed npm just for that :p 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/ http://registry.npmjs.org/ and it's working now.
- AaronO 13y agoGreat :)
- ritonlajoie 13y agoOops I think my system is too old to run that :p 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
- quarterto 13y agoThe Node.js in Ubuntu's repositories is horrifically old. Try this PPA: https://launchpad.net/~chris-lea/+archive/node.js/ https://launchpad.net/~chris-lea/+archive/node.js/
- arikrak 13y agoHow does this compare with Cloud9? https://github.com/ajaxorg/cloud9/ https://github.com/ajaxorg/cloud9/
- AaronO 13y agoCodebox & 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.
- filearts 13y agoIt 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.
- belluchan 13y agoCloud9 contributes to ace, but it's also a Mozilla project. Bespin was merged into Cloud9's editor, and now both contribute to Ace.
- janjongboom 13y agoBespin was merged into it, yes. But there have not been major contributions by Mozilla in recent times.
- whazzmaster 13y agoI 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. [1] http://www.shpakovski.com/codebox/ http://www.shpakovski.com/codebox/
- AaronO 13y agoSorry about the confusion. Codebox (our IDE) will have a full desktop application soon on Mac/Linux (the IDE can run on the desktop).
- Goranek 13y agoI'm getting Error: connect ECONNREFUSED when trying to create a new box @codebox.io
- Goranek 13y agoI've managed to create it out of a git repository, but when i try to start IDE, i'm getting some weird login request(dynobox.io)
- rickyc091 13y agoHmmm, getting a "Error: connect ECONNREFUSED" when I'm trying to create a box.
- jalan 13y agoI 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.
- AaronO 13y agoCodebox 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.
- SamyPesse 13y agoThank you, this IDE works also on desktop (Mac Application coming soon), here is a video of the result: https://www.youtube.com/watch?v=xvPEngyXA2A https://www.youtube.com/watch?v=xvPEngyXA2A
- atmosx 13y agoWell, 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.
- rmrfrmrf 13y agoYou could always use the JavaScript implementation of vim ;P
- JangoSteve 13y agoI 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. [1] https://www.nitrous.io/ https://www.nitrous.io/ [2] http://coolwanglu.github.io/vim.js/web/vim.html http://coolwanglu.github.io/vim.js/web/vim.html
- staticshock 13y agoI'm running into an error. 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.
- AaronO 13y agoHey sorry, due to the Hacker News load a piece of our infrastructure is having some difficulties ... 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.
- crashandburn4 13y agoyeah, 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 :)
- sjs382 13y agoI 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.
- itry 13y agoSigned up with codebox.io. When trying to create a "box" I get this: 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"> https://sx0z2mmmtv96.statuspage.io/heroku/error"> Application Error</p> </iframe> </body> </html>
- pjungwir 13y agoI'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!
- AaronO 13y agoCodebox 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.
- sprizzle 13y ago+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.
- pjmlp 13y agoAh you mean Smalltalk and Lisp Machines?
- TheAnimus 13y agoVisual Studio 2013 lets me do this quite easily between my different machines. http://msdn.microsoft.com/en-us/library/dn135229.aspx 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.
- bluekitten 13y ago
- jhappoldt 13y agoI 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.
- myang 13y agoTrying to create a new box but got the error: 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
- marigoldpicker 13y agois 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__'
- joshuacc 13y agoYou can probably start it by running codebox/bin/codebox.js directly. (It has the shebang line at the top, so no need to explicitly start node.) https://github.com/FriendCode/codebox/blob/master/bin/codebox.js https://github.com/FriendCode/codebox/blob/master/bin/codebo...
- spindritf 13y agonpm 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.
- AaronO 13y agoThe global install is only for when you're running it locally on your machine (it isn't fully packaged for the desktop yet, but will be soon). On our cloud service (https://www.codebox.io https://www.codebox.io) we do run each app in a seperate container/VM of course.
- joshuacc 13y agoThe 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.
- samsquire 13y agonpm install -g is more like apt-get install 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)
- ekyo777 13y agoSeems to lack some form of 'package control'. I'd suggest checking the following before implementing tough: https://sublime.wbond.net/ https://sublime.wbond.net/ http://batsov.com/articles/2012/02/19/package-management-in-emacs-the-good-the-bad-and-the-ugly/ http://batsov.com/articles/2012/02/19/package-management-in-...
- AaronO 13y agoThe service is currently going through some issues with the load from Hacker News. (We're in early Beta ...) 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
- blairbeckwith 13y agoSeems 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/ http://www.shpakovski.com/codebox/
- Morphling 13y agoI 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.