REST Easy with Deployd - tiConf EU 2013

Preview:

Citation preview

Deployd

REST Easy with Deployd

Boydlee Pollentine @boydleep

What is Deployd?In a nutshell…

Deployd allows you to design, build and scale API’s for web and mobile apps in

minutes.It’s free, and open source.

It even comes with a full dashboard system to allow you to create and manage your collection

API’s, create Events and insert/edit data records.

It’s built on top of Node.JS and MongoDB so you know it’s going to be fast, and

scalable.

Create RESTful API’s through design…

Deployd is built around a series of REST calls that let’s you create “CRUD” collections (GET, DEL, PUT, POST).

The Deployd Dashboard

Scripted Logic through Events…

It uses “Events” for each of the REST methods to allow you to intercept calls

and inject your own business logic code.

Events Logic Screen

Access Other Collections & Join

Results…

You can use the built-in DPD library to access other collections in your Deployd database and script business logic based

on those queries…

Accessing Collections via DPD

Full User login, logout and creation support

out of the box…

You can use the built-in “user” collection type to automatically manage your

system logins, logouts and user creations.

You can restrict access to certain

REST calls by throwing “cancel”…

As well as throwing errors, determining if a property has changed

& more…

protect() = don’t allow updates for this propertyprevious() = object containing previous item valueschanged() = informs if a property item was updated

hide() = hides a property in your REST responseerror() / errorif() = adds an error message to the

response

Use Modules to perform tasks that Deployd doesn’t already do…..

There’s a number of Deployd modules already available for sending e-mail and get files from

Amazon S3, amongst other things.

They’re based on Node Packages, so you can re-use any Node.JS package with NPM!

There’s a tonne of examples at Deployd.com

There’s plenty of sample apps at Deployd.com that show what you can do

with the system, including integration with AngularJS and other Node.JS based systems.

Recommended