winch - let your mobile apps work off-line

24

Upload: cedric-deltheil

Post on 10-Jun-2015

227 views

Category:

Technology


2 download

DESCRIPTION

High-level overview of Winch - a master-slave replication engine designed to perform well over mobile networks, for the #hack4good Paris hackathon. See: http://winch.io/

TRANSCRIPT

Page 1: Winch - Let your mobile apps work off-line
Page 2: Winch - Let your mobile apps work off-line
Page 3: Winch - Let your mobile apps work off-line

That's how yourmobile applooks... whenyou're mobile (!)

Page 4: Winch - Let your mobile apps work off-line

This is because...

Page 5: Winch - Let your mobile apps work off-line

(1) mobilenetworks suck...

Page 6: Winch - Let your mobile apps work off-line

(2) ...it's a pain inthe ass to solve

Page 7: Winch - Let your mobile apps work off-line
Page 8: Winch - Let your mobile apps work off-line

Let your mobileapp work off-line!

Page 9: Winch - Let your mobile apps work off-line

What is it?

Page 10: Winch - Let your mobile apps work off-line

Winch [wɪntʃ] noun.

A master-slave replication engine

designed to perform well over mobile

networks.

Page 11: Winch - Let your mobile apps work off-line

How does itwork?

Page 12: Winch - Let your mobile apps work off-line

As simple as 1, 2, 3

1.  you upload your data,

•  we provide an HTTP API for that,

2.  our servers prepare it for transfer,

•  we re-package your data into optimal packs,

•  we store it on a CDN for efficient transfers,

3.  it is sent to mobile clients and stored in a local database,

•  we provide a client-side SDK for that.

Page 13: Winch - Let your mobile apps work off-line

Concepts

Page 14: Winch - Let your mobile apps work off-line

In short

Winch is a key-value data store.“

Page 15: Winch - Let your mobile apps work off-line

More precisely

•  your data lives in a datastore made of:

•   namespace -s which contain:

•   record -s made of:

•   key ,

•   value

It's like a collection of hash maps.

Page 16: Winch - Let your mobile apps work off-line

Think of it as...

datastore ~ database

namespace ~ table

key ~ primary key

value ~ data

Page 17: Winch - Let your mobile apps work off-line

How-to?

Page 18: Winch - Let your mobile apps work off-line

(1/2) Upload data on Winch server

•  We provide an HTTP API:

•  use our Python or Lua client library,

•  or use cURL from the command-line.

Page 19: Winch - Let your mobile apps work off-line

(2/2) Sync data with Winch client

•  We provide a SDK for iOS and Android:

•  call sync() to keep your client in sync,

•  then get your data via get(ns, key) .

It's fully-packaged and easy to use! No networking code required™.

Page 20: Winch - Let your mobile apps work off-line

Give It A Try!

Page 21: Winch - Let your mobile apps work off-line

Steps

1.  Register on http://winch.io,

2.  Activate your account,

3.  Follow our step-by-step User Guide.

Page 22: Winch - Let your mobile apps work off-line

Need Help?

Page 23: Winch - Let your mobile apps work off-line

Just ask!

•  Ping us on Twitter: @winch_io,

•  Drop us an email: winch AT moodstocks DOT com .

Page 24: Winch - Let your mobile apps work off-line

Thanks :)