Client side application

Frameworks

Leave a comment

Cloud IDE design (technical)

Cloud IDE Server side

Access to the server side is provided through REST-like API
  • Source files are stored in CouchDB (Git Commits too).
    • Develop git->couchdb storage layer
  • Some project configuration files are stored in CouchDB (information that is not relational, does not require aggregation)
  • User information/ statistics stored in PostgreSQL
  • Source files/ git tarballs precached in Redis
  • Tornado serves as a "proxy" layer between CouchDB/Postgre/Redis and Client.
  • Tornado passes control commands from client to Compilation Unit logging communication and sending it to client.
  • Long-running/ time consuming tasks Tornado offloads to celeryd. (make celery async result passing compatible with Tornado's IOLoop (epoll/select compatible solution)).

TODO

  • For smart/simplistic DB Connection pooling: Async Semaphores (i.e. DeferredSemaphore in Twisted)
  • Git->CouchDB storage Layer
  • Celery working in Tornado IOLoop (non blocking AsyncResult (although, name is async, on KeyValueStorage (i.e. Redis, Memcache) it is blocking or long pooling). Further more, all communications with Message storage/ backend should go through IOLoop without blocking.

Leave a comment

Cloud IDE design


Leave a comment

Client-side technology

Editor

"Gets more attentions from large companies: i.e. Adobe is using it for developing Brackets (HTML5 + CSS editor). New IDE LightTable (http://www.kickstarter.com/projects/306316578/light-table). Weights much less then Ace, simpler code, easier to extend." 
"I will try to add abstraction layer, to remove complete dependency on CodeMirror"

Javascript/ Dom manipulation

  • jQuery

Design/ UI

  • Twitter Bootstrap
"I will be using bootstraps' css styles and layouts, for faster UI development, and jQuery for all javascript related operations."

Leave a comment

Cloud9 IDE Update

http://c9.io/site/blog/2012/06/cloud9ide-new-features/

Cloud9 released new version with gcc/python/ruby support. =(

2 Comments

Architecture

# Architecture



Leave a comment

Technologies (client-side) review

Editors

"Stable, long history, used by Google (playgrounds). Supports a lot of languages, supports search & replace. Released under a MIT-style license"
"Used in Cloud9 IDE, supports many languages. Mozilla's Bespin/ Skywriter was merged into Ace, developed by Mozilla, Ace.org. Released under the Mozilla tri-license (MPL/GPL/LGPL)"

Transport layers

  • Socket.IO
"Provides layer over ajax/ Websockets/ flashsockets for simple client-server message transmission."

Javascript/ design

Posted in , , , , , | 1 Comment

Search

Swedish Greys - a WordPress theme from Nordic Themepark. Converted by LiteThemes.com.
© 2012. Powered by Blogger.