Giter Site home page Giter Site logo

ysminnpu / ideair Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 1.0 117.8 MB

IDEAir - a web IDE over the air

License: GNU General Public License v3.0

JavaScript 97.79% Shell 0.03% CSS 0.57% CoffeeScript 0.21% Ruby 0.01% Scilab 1.39% C 0.01% C++ 0.01% Python 0.01%

ideair's Introduction

IDEAir

IDEAir is an open source IDE based on cloud9.

IDEAir enables developers to write, build, debug, test their C/C++ applications all within a browser. The IDEAir server can be deployed on a remote or local machine. Especially, it can be deployed on an embedded system board such as Intel Edison board, and then developers can develop embedded applications over the air (WiFi).

Features

  • High performance ACE text editor with bundled syntax highlighting support
  • Support C/C++ applications build, debug, and run
  • Console shell to the server or board
  • Problem solving assistant with integrated StackOverflow knowledge
  • Project management

Browser Support

We support the newer versions of Chrome, Firefox and Safari.

Installation and Usage

Requirements:

  • NodeJS 0.10.x

Full IDEAir Installation

mkdir IDEAir
cd IDEAir
wget https://raw.githubusercontent.com/ysminnpu/IDEAir-manifest/master/repo
chmod +x ./repo 
./repo init -u https://github.com/ysminnpu/IDEAir-manifest.git
./repo sync
cd cloud9
npm install
cd ../cloud9hub
npm install

Start IDEAir server

./start-dev.sh

Use IDEAir

Go to http://IDEAir_server:3105/#/dashboard with your favorite browser. 

Full IDEAir Installation on the board

We use an embedded board such as Edison (32bit IA arch) as an example. And we suppose the board and the host share a same wlan network. The ip of board is 192.168.8.100.

On host, install a version of 32bit node.js. In our experiment, we used http://nodejs.org/dist/v0.10.28/node-v0.10.28-linux-x86.tar.gz. Untar the package and include the bin directory in your PATH. Use "which node" to make sure you are using the node binary from that directory.

Also make sure you are using 32bit CC, CXX from the Edison SDK. You can change them using "source /opt/poky-edison/1.5.1/environment-setup-i586-poky-linux". And verify your CC is from Edison SDK by "echo $CC".

Then follow the installation instruction mentioned above, to install a 32 bit version server on your host. This step helps us resolve all the package dependencies.

Then create a tarball with tar cvzf IDEAir.tgz IDEAir. Copy it to the board with scp IDEAir.tgz [email protected]:/home.

ssh [email protected]; cd /home/; tar xzvf IDEAir.tgz; cd IDEAir/cloud9hub/. Make sure config.js use a proper url for the board - our test uses 192.168.8.100. Start server with npm start.

You can simply use the start-board.sh if you don't wanna bother to adjust config.js. This script will do that for you.

On the host, google-chrome 192.168.8.100/#/dashboard.

Only Install cloud9 (no project management feature)

git clone https://github.com/ysminnpu/IDEAir.git cloud9
cd cloud9
npm install

The above install steps create a cloud9 directory with a bin/cloud9.sh script that can be used to start Cloud9:

bin/cloud9.sh

Optionally, you may specify the directory you'd like to edit:

bin/cloud9.sh -w ~/git/myproject

Cloud9 will be started as a web server on port -p 3131, you can access it by pointing your browser to: http://localhost:3131

By default Cloud9 will only listen to localhost. To listen to a different IP or hostname, use the -l HOSTNAME flag. If you want to listen to all IP's:

bin/cloud9.sh -l 0.0.0.0

If you are listening to all IPs it is adviced to add authentication to the IDE. You can either do this by adding a reverse proxy in front of Cloud9, or use the built in basic authentication through the --username and --password flags.

bin/cloud9.sh --username leuser --password c9isawesome

Cloud9 is compatible with all connect authentication layers, to implement your own, please see the plugins-server/cloud9.connect.basic-auth plugin on how we added basic authentication.

For a quick trial, IDEAir can be started as follows.

npm start

It is the same as

./bin/cloud9.sh -w testcases/c/testMakefile -l 0.0.0.0

As you will see, a test C project will be opened.

License

The GPL version 3, read it at http://www.gnu.org/licenses/gpl.txt

Contact

Shoumeng Yan

ideair's People

Contributors

basdewachter avatar bmatusiak avatar bnoordhuis avatar cadorn avatar creationix avatar ejpbruel2 avatar fjakobs avatar gero3 avatar giannis avatar gjtorikian avatar janjongboom avatar jasny avatar lennartcl avatar linh81 avatar lukaszlipinski avatar mamund avatar mattpardee avatar mikedeboer avatar mostafaeweda avatar nightwing avatar pike avatar rendez avatar revnode avatar rikarends avatar schamane avatar sergi avatar simonlc avatar tanepiper avatar wcandillon avatar zefhemel avatar

Watchers

 avatar  avatar

Forkers

mezzlabs

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.