Skip to content
An ember-cli-deploy-plugin to upload an Ember App directly to a CouchDB cluster.
JavaScript HTML
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.


An ember-cli-deploy plugin to upload files to CouchDB

This plugin uploads an Ember App to a CouchDB design doc. The Ember App is served directly to the browser from CouchDB, without any other software in the stack.

What is an ember-cli-deploy plugin?

A plugin is an addon that can be executed as a part of the ember-cli-deploy pipeline. A plugin will implement one or more of the ember-cli-deploy's pipeline hooks.

For more information on what plugins are and how they work, please refer to the Plugin Documentation.

Quick Start

To get up and running quickly, do the following:

$ ember install ember-cli-deploy-couchdb
  • Place the following configuration into config/deploy.js
ENV.couchdb = {
  db: 'http://localhost:5984/emberapp'

  // optionally, if you are using ember-cli-deploy-build instead of
  // ember-cli-deploy-build-plus, also include the following

  // ddocname: emberapp,
  // couchDir: 'tmp/deploy-dist',
  // distDir: 'tmp/deploy-dist/_attachments'

If you are using ember-cli-deploy-build, you will also need to add the following to your build hook = {
  outputPath: 'tmp/deploy-dist/_attachments'
  • Place the following configuration into config/environment.js where ddocname is normaly the same as modulePrefix:. ddocname can be changed in the configuration options.
if (environment === 'production') {
  ENV.rootURL = '/emberapp/_design/ddocname/_rewrite/';

If a vhost is used do the following:

if (environment === 'production') {
  ENV.rootURL = '/';
  • Run the pipeline
$ ember deploy


Run the following command in your terminal:

ember install ember-cli-deploy-couchdb

ember-cli-deploy Hooks Implemented

For detailed information on what plugin hooks are and how they work, please refer to the Plugin Documentation.

  • configure
  • willDeploy
  • didBuild
  • upload

Configuration Options

For detailed information on how configuration of plugins works, please refer to the Plugin Documentation.

db (required)

The CouchDB URL

  • 'http://localhost:5984/emberapp'
  • ''

Default: undefined


The Ember App is uploaded to the ddocname URL as _design/ddocname.



Array of regexps for files to skip upload.

Default: []


The root directory where the files will be searched for. By default, this option will use the distDir property of the deployment context, provided by ember-cli-deploy-build-plus.

Default: context.distDir


The following properties are expected to be present on the deployment context object:


You can use the issue tracker to provide feedback, suggest features or report bugs.

  • If you get Assertion failed: end <= source_len, file src\, line 280 you are using node.js v0.12 or io.js v1.3.0. These versions have a bug with Buffers. Upgrade to a newer or older version.

Running Tests

  • npm test
You can’t perform that action at this time.