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

Building Offline First apps with Hoodie

Building Offline First apps with Hoodie

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

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