Black Lives Matter. Support the Equal Justice Initiative and read our statement here.
Deco IDE

Deco IDE

React Native IDE with component management

Deco IDE

Build Status Bountysource Slack Status

The all-in-one solution for building React Native applications.

You can get started right away on your React Native project by installing Deco and creating a new project — it's fast and there's no manual setup needed. File scaffolding handles your boilerplate. Ready-made components drop right into your code. Properties are graphically editable through the property inspector. It's an entirely new way to write, tweak, and re-use code.

Download Deco for Mac

Deco Screenshot

Documentation to get you started on Deco IDE.

Open an Issue for bug reports and feature requests.

Join Slack to talk with us.

Table of Contents

Setup for Development



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"

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.

Clone and Install Dependencies

$ git clone
$ cd ./deco-ide/web
$ npm install
$ bundle install
$ cd ../desktop
$ npm install
$ npm run copy-libs
$ cd ../shared
$ npm install
$ cd ../desktop/libs/Scripts/sync-service
$ npm install


Deco core is split into three sub-projects...

  1. Web
  • A webpack bundle that assumes it's been loaded by Electron's BrowserWindow.
  1. Desktop
  • A webpack bundle that runs in Electron's NodeJS environment and controls the desktop APIs.
  1. Shared
  • Shared constants for communicating over our IPC (inter-process communication) abstraction layer.

Quick Start

$ cd ./deco-ide
$ ./run-dev.js

Manual Start

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:

  1. Watch the ./web/src directory and re-build on any changes to the code
  2. Serve the build on localhost:8080
# Open a new terminal window
$ cd ./desktop
$ npm run start

This command will:

  1. Build ./desktop/src and place the result into ./desktop/build/app.js
  2. Launch a local Electron binary and load in the bundle from desktop/build/app.js

Testing a Production Build

$ 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.


Opening Issues

Issues are intended for bug reporting and feature requests.

Before you open a new issue, make sure it isn't already in the list of existing issues. If you believe you've found a new bug, it helps to include any relevant logs in your description.

You can find the logs file at ~/Library/Application Support/com.decosoftware.Deco/logs.out

Becoming a Contributor

All information on how to become a contributor is in our Contribution Guidelines.


We ❤️ feedback!

Join the discussion in our community chat.


Copyright 2015 © Deco Software Inc - All rights reserved


Something missing? Edit this app.

Keyboard Shortcuts

Key Action
/ Focus the search bar
Esc Focus the search bar and cleans it
Select the next search result
Select the previous search result
Enter Open the selected search result
cmdEnter Ctrl+Enter Open the selected search result in a new tab