It is recommended that you use node v5.x and npm 3.x for best results. This project also requires the Ruby 'Bundler' gem.
Installing these on your Mac is easy with Homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Now that Homebrew is installed you can run these commands:
brew install node
brew install ruby
gem install bundler
Linux is not supported at this time.
Windows is not supported at this time.
$ git clone git@github.com:decosoftware/deco-ide
$ cd ./deco-ide/web
$ npm install
$ bundle install
$ cd ../desktop
$ npm install
$ npm run copy-libs
$ cd ../shared
$ npm install
Deco core is split into three sub-projects...
- A webpack bundle that assumes it's been loaded by Electron's BrowserWindow.
- A webpack bundle that runs in Electron's NodeJS environment and controls the desktop APIs.
- Shared constants for communicating over our IPC (inter-process communication) abstraction layer.
$ cd ./deco-ide
$ ./run-dev.js
Occasionally it is helpful to stop and restart the desktop
gulp task without stopping the web
gulp task. To do this you can run the following commands...
$ cd ./web
$ npm run watch
This command will:
- Watch the
./web/src
directory and re-build on any changes to the code - Serve the build on localhost:8080
# Open a new terminal window
$ cd ./desktop
$ npm run start
This command will:
- Build
./desktop/src
and place the result into./desktop/build/app.js
- Launch a local Electron binary and load in the bundle from
desktop/build/app.js
$ cd ./desktop
$ npm run pack
The resulting .pkg file will be output to ./dist/osx/Deco-$VERSION.pkg
This build is for local testing only. When you install, the system will generate a warning about this being from an unapproved developer — this is because the package is not signed when building locally.