Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Building Offline First apps with Hoodie

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

Building Offline First apps with Hoodie

Presented at JS.LA March’17. Source code of the demo: https://github.com/gr2m/sweet.la

Avatar for Gregor Martynus

Gregor Martynus

March 30, 2017
Tweet

More Decks by Gregor Martynus

Other Decks in Technology

Transcript

  1. $ mdkir sweet.la $ cd sweet.la # creates package.json $

    npm init -y # installs hoodie and sets "start" script $ npm install --save hoodie $ npm start @gr2m | js.la March’17
  2. Load Hoodie Client <script scr="/hoodie/client.js"></script> Data hoodie.store.add({name: 'honey'}) hoodie.store.on('change', renderItems)

    Account hoodie.account.signIn({username: 'foo', password: 'secret'}) @gr2m | js.la March’17
  3. hoodie.account.signUp() hoodie.account.signIn() hoodie.account.signOut() hoodie.account.destroy() hoodie.account.on() hoodie.store.add() hoodie.store.find() hoodie.store.findOrAdd() hoodie.store.findAll() hoodie.store.update()

    hoodie.store.updateOrAdd() hoodie.store.updateAll() hoodie.store.remove() hoodie.store.removeAll() hoodie.store.pull() hoodie.store.push() hoodie.store.sync() hoodie.store.connect() hoodie.store.disconnect() hoodie.store.on() hoodie.connectionStatus.startChecking() hoodie.connectionStatus.stopChecking() hoodie.connectionStatus.on() @gr2m | js.la March’17
  4. HOODIE IS OPEN SOURCE ▸ built with JavaScript, hapi, CouchDB,

    PouchDB ▸ extendable with app specific or npm plugins ▸ "most welcoming Open Source community" 1 1 many people say so :) @gr2m | js.la March’17
  5. OFFLINE FIRST IS AN APPROACH TO BUILD APPS THAT ALWAYS

    WORK, WITHOUT ANY LOADING BARS, UNDER ANY NETWORK CONDITIONS. @gr2m | js.la March’17
  6. WHAT MOBILE FIRST WAS TO UI OFFLINE FIRST IS TO

    CONNECTIVITY @gr2m | js.la March’17
  7. 1. ASSETS ▸ Install from App Store ▸ Service Worker

    ▸ AppCache (Deprecated) ▸ ! Think of app updates @gr2m | js.la March’17
  8. 2. DATA ▸ Store data offline ▸ Sync ▸ !

    Watch out for conflicts / data loss @gr2m | js.la March’17
  9. ! REMEMBER ! FRIENDS DON’T LET FRIENDS BUILT THEIR OWN

    SYNC ENGINE @gr2m | js.la March’17
  10. OFFLINE FIRST JOY #5 SECURITY ! ▸ Intranet apps to

    go ▸ local encryption @gr2m | js.la March’17
  11. OFFLINE FIRST TRIVIA LTE IN THE US SLOWED DOWN BY

    50% IN 20162 2 twinprime.com/lte-has-slowed-by-50-in-the-us/ @gr2m | js.la March’17
  12. OFFLINE FIRST TRIVIA ALMOST 60% OF MOBILE IS 2G3 3

    http://www.gsma.com/mobileeconomy/ @gr2m | js.la March’17
  13. OFFLINE FIRST TRIVIA 100 MILLION PEOPLE CAME ONLINE IN INDIA

    IN 20164 4 http://www.internetlivestats.com/internet-users-by-country/ @gr2m | js.la March’17
  14. OFFLINE FIRST TRIVIA DO YOU KNOW WHY THE OFFLINE DINOSAUR

    IS SO CUTE? @gr2m | js.la March’17