Setup your server

Using CouchDB or cloudant

Server architecture

This application has been designed a little bit differently than contemporary web applications, in that it does not have any backend (server-side) code. CouchDB is responsible for data management, replication and synchronization across multiple devices, while a DropBox account is responsible for file management.

You might think that there's some kind of couchDB-specific setup, and the good news is: there isn't any! all the functionalities that the application needs comes bundled with a mere basic installation of CouchDB.

The only thing you have to do is to create a user (usually created while you're installing CouchDB) and set all the databases to be read and written by this user, and that's just a security measure, so just installing CouchDB is technically enough for the application to work.

And if even that seems too much for you, and you don't like to install CouchDB by yourself, well, you can use Cloudant. The application is perfectly compatible with a Cloudant server, and the best thing is you can get a cloudant server up and running in no time for free!

The next two section discuss how to setup your own server, and how to setup a cloudant server, you only have to follow one of them.

Setup your server

  1. Create a Vultr account for your server (I highly recommend them for small to mid-sized projects). Use this referral link: https://www.vultr.com/?ref=7739283 to get $10 which can get you running up to two months using their $5 plan, and it's kind of a way to support the developer of this application.

  2. Deploy a new server using the Ubuntu image (or any distro you prefer).

  3. Follow the installation instructions detailed at the official CouchDB website: http://docs.couchdb.org/en/stable/install/index.html.

  4. Make sure to enable CORS (more details on how to enable CORS).

  5. You also need your server to have an SSL certificate (which means that you need to have a domain too), so you can connect it to the application. This is a requirement! but you can get it for free using Let’s Encrypt.

Having a problem? need support? submit an issue here: https://github.com/alexcorvi/apexo/issues.

Setup a cloudant server

  1. Click here and create an IBM Bluemix account.

  2. After creating your account and verifying your email navigate to this page: https://console.bluemix.net/catalog/services/cloudant

  3. Create a cloudant server and make sure to set "Available authentication methods" to "Both legacy and IAM".

  4. Click "Launch Cloudant Dashboard".

  5. You'll be redirected to a page, the hostname of that page which looks like this one: https://f8b3f1f4-b695-4806-aded-66587885a38fe-bluemix.cloudant.com is the CouchDB server location.

  6. Then to enable CORS, go to account, then to the CORS tab and click enable CORS.

  7. Now back to bluemix cloudant console, go to credentials and click "new credentials":

  8. Click Add from the dialogue:

  9. Click View credentials from the service credentials list on the credentials you've just created:

  10. You'll get the username and the password that you'll be using to login.

Having a problem? need support? submit an issue here: https://github.com/alexcorvi/apexo/issues.