Skip to content

Get started

Gustavo Maximiliano Cortez edited this page Mar 15, 2017 · 1 revision

Binary versions of Copay are available for download at Copay.io. Copay Binaries are signed with the key [email protected] – See the section How to Verify Copay Signatures for details.

Testing in a Browser

Note: This method should only be used for development purposes. When running Copay in a normal browser environment, browser extensions and other malicious code might have access to internal data and private keys. For production use, see the latest official releases.

Clone the repo and open the directory:

git clone https://github.com/bitpay/copay.git
cd copay

Ensure you have Node installed, then install and start Copay:

npm install
npm start

Visit localhost:3000 to view the app.

A watch task is also available to rebuild components of the app as changes are made. This task can be run in a separate process – while the server started by npm start is running – to quickly test changes.

npm run watch

Testing on Real Devices

It's recommended that all final testing be done on a real device – both to assess performance and to enable features that are unavailable to the emulator (e.g. a device camera).

Android

Follow the Cordova Android Platform Guide to set up your development environment.

When your developement enviroment is ready, run the start:android npm package script.

npm run apply:copay
npm run start:android

iOS

Follow the Cordova iOS Platform Guide to set up your development environment.

When your developement enviroment is ready, run the start:ios npm package script.

npm run apply:copay
npm run start:ios

Desktop (Linux, macOS, and Windows)

The desktop version of Copay currently uses NW.js, an app runtime based on Chromium. To get started, first install NW.js on your system from the NW.js website.

When NW.js is installed, run the start:desktop npm package script.

npm run apply:copay
npm run start:desktop

Build Copay App Bundles

Before building the release version for a platform, run the clean-all command to delete any untracked files in your current working directory. (Be sure to stash any uncommited changes you've made.) This guarantees consistency across builds for the current state of this repository.

The final commands build the production version of the app, and bundle it with the release version of the platform being built.

Android

npm run clean-all
npm run apply:copay
npm run final:android

iOS

npm run clean-all
npm run apply:copay
npm run final:ios

Windows Phone

  • Install Visual Studio 2013 (or newer)
  • Run make wp8-prod

Desktop (Linux, macOS, and Windows)

npm run clean-all
npm run apply:copay
npm run final:desktop

Google Chrome App

cd chrome-app/

npm run apply:copay
grunt
make

On success, the Chrome extension will be located at: browser-extensions/chrome/copay-chrome-extension. To install it go to chrome://extensions/ in your browser and ensure you have the 'developer mode' option enabled in the settings. Then click on "Load unpacked chrome extension" and choose the directory mentioned above.

Configuration

Enable External Services

To enable external services, set the COPAY_EXTERNAL_SERVICES_CONFIG_LOCATION or BITPAY_EXTERNAL_SERVICES_CONFIG_LOCATION environment variable to the location of your configuration before running the apply task.

COPAY_EXTERNAL_SERVICES_CONFIG_LOCATION="~/.copay/externalServices.json" npm run apply:copay
# or
BITPAY_EXTERNAL_SERVICES_CONFIG_LOCATION="~/.bitpay/externalServices.json" npm run apply:bitpay