SlideShare a Scribd company logo
1 of 38
Download to read offline
X C o n f | S e p t e m b e r 2 0 1 4 
BUILDING 
OFFLINE WEB APPS 
2 case studies
OFFLINE?!! 
2
3
SUPERMARKET 
Java, Oracle 
Stock Ordering System 
Commodity Tablets 
Chrome, JavaScript
5
Update 
Order 
Quantity: 
5 
Product: 
34273
Queue 
Update 
Order 
Quantity: 
5 
Product: 
34273 
Update Order! 
Update Order! 
! 
Update Order! 
! 
Quantity: 5! 
Product: 34273! 
Update 
! 
Order 
Quantity: 
5 
Product: 
34273 
Quantity: 5! 
Product: 34273! 
Quantity: 5! 
Product: 34273!
Queue 
Update 
Order 
Quantity: 
5 
Product: 
34273 
Update Order! 
Update Order! 
! 
Update Order! 
! 
Quantity: 5! 
Product: 34273! 
Update 
! 
Order 
Quantity: 
5 
Quantity: 5! 
Product: 34273! 
Quantity: 5! 
Product: 34273! 
Message Processor Product: 
34273
Queue 
Update 
Order 
Quantity: 
5 
Product: 
34273 
Update Order! 
Update Order! 
! 
Update Order! 
! 
Quantity: 5! 
Product: 34273! 
Update 
! 
Order 
Quantity: 
5 
Quantity: 5! 
Product: 34273! 
Quantity: 5! 
Product: 34273! 
Message Processor Product: 
34273
11 
// 
Store 
localStorage.town 
= 
"Hamburg"; 
// 
Retrieve 
alert(localStorage.town); 
Web Storage 
5MB+
<<<<<<< 
HEAD 
Hamburg 
is 
better 
than 
Manchester 
======= 
Manchester 
is 
better 
than 
Hamburg 
>>>>>>> 
d237ef28dc3fab5dcccc63f580bfa7780f
13
14
TRAVELLING PRODUCT TESTER
16
js 
html 
css 
APPCACHE
js 
html 
css 
APPCACHE
js 
html 
css 
APPCACHE
js 
html 
css 
v.254 
APPCACHE
1 
<!doctype 
html> 
2 
<html 
... 
manifest="cache.manifest"> 
1 
CACHE 
MANIFEST 
2 
# 
rev 
12 
-­‐ 
2014-­‐09-­‐22T15:28:08.540Z 
4 
CACHE: 
5 
404.html 
6 
favicon.ico 
7 
scripts/scripts.js 
8 
scripts/vendor.js 
9 
styles/application.css 
10 
index.html 
12 
NETWORK: 
13 
* 
15 
FALLBACK: 
16 
/ 
/offline.html
Update 
Order 
Quantity: 
5 
Product: 
34273 
{ 
"uid": 
"aaaaaaaa-­‐bbbb-­‐cccc-­‐dddd-­‐eeeeeeeeeeee", 
"meta": 
{...}, 
"title": 
"Quality 
sample 
XYZ", 
"image": 
"aaaaaaaa-­‐bbbb-­‐cccc-­‐dddd-­‐eeeeeeeeeeee.png", 
"content": 
{ 
"sections": 
[{ 
"uid": 
"aaaaaaaa-­‐bbbb-­‐cccc-­‐dddd-­‐eeeeeeeeeeee" 
"comments": 
[], 
"title": 
"A 
block 
title", 
"blocks": 
[{ 
"uid": 
"aaaaaaaa-­‐bbbb-­‐cccc-­‐dddd-­‐eeeeeeeeeeee", 
"title": 
"Material 
-­‐ 
Lining", 
"type": 
"MATERIAL”, 
"colours": 
[ 
{ 
"code": 
"18-­‐3015 
TPX", 
"colourName": 
"Amethyst", 
"comments": 
[], 
"standard": 
"Pantone", 
"uid": 
"aaaaaaaa-­‐bbbb-­‐cccc-­‐dddd-­‐eeeeeeeeeeee" 
} 
], 
"compositions": 
[{ 
"uid": 
"aaaaaaaa-­‐bbbb-­‐cccc-­‐dddd-­‐eeeeeeeeeeee" 
"comments": 
[ 
{ 
text: 
"thread 
count 
seems 
off" 
], 
"group": 
"Vegetable 
fibres", 
"name": 
"Cotton", 
"percentage": 
100, 
"sustainability": 
{ 
value: 
“Organic” 
}, 
}] 
}] 
}] 
} 
}
23
24
25 
MongoDB
26 
MongoDB 
v.254
27 
MongoDB 
v.254
28 
MongoDB 
v.254
30
Set up file system 
+ request quota 
Store file 
locally 
Update 
image tag 
Store file 
locally 
Upload 
image 
Download file 
from server 
Download 
image 
Upload file to 
server 
Update 
image tag 
<img 
src="filesystem:http://192.168.50.4/ 
persistent/3ebc23e1-­‐10bf-­‐5b60-­‐440.jpg">
50% of current disk space 
available to browser 
20% of that is the maximum 
available to a single web app
OR ?
Potential for data conflicts? 
Size of data? 
Sensitive data? 
OR ? 
Which browsers required? 
Structure of data? 
Amount of functionality to work offline?
Challenge 
Requirements
Offline first 
and early
Explore the 
possibilities 
37
THANK YOU 
BIRGITTA 
@birgitta410 
ROB 
@robmiles0

More Related Content

Viewers also liked

Viewers also liked (20)

Personal retrospectives
Personal retrospectivesPersonal retrospectives
Personal retrospectives
 
Using Clojure for Sentiment Analysis of the Twittersphere
Using Clojure for Sentiment Analysis of the TwittersphereUsing Clojure for Sentiment Analysis of the Twittersphere
Using Clojure for Sentiment Analysis of the Twittersphere
 
Datensparsamkeit
DatensparsamkeitDatensparsamkeit
Datensparsamkeit
 
AppSync.org: open-source patterns and code for data synchronization in mobile...
AppSync.org: open-source patterns and code for data synchronization in mobile...AppSync.org: open-source patterns and code for data synchronization in mobile...
AppSync.org: open-source patterns and code for data synchronization in mobile...
 
Why Game Developers Should Care About HTML5
Why Game Developers Should Care About HTML5Why Game Developers Should Care About HTML5
Why Game Developers Should Care About HTML5
 
Data Synchronization Patterns in Mobile Application Design
Data Synchronization Patterns in Mobile Application DesignData Synchronization Patterns in Mobile Application Design
Data Synchronization Patterns in Mobile Application Design
 
Top 15 Expert Tech Predictions for 2015
Top 15 Expert Tech Predictions for 2015Top 15 Expert Tech Predictions for 2015
Top 15 Expert Tech Predictions for 2015
 
The Growth of Google Direct Answers - A Dreamforce14 Presentation by Danny Su...
The Growth of Google Direct Answers - A Dreamforce14 Presentation by Danny Su...The Growth of Google Direct Answers - A Dreamforce14 Presentation by Danny Su...
The Growth of Google Direct Answers - A Dreamforce14 Presentation by Danny Su...
 
The Future of Wearable Fitness
The Future of Wearable FitnessThe Future of Wearable Fitness
The Future of Wearable Fitness
 
Exploiting Deserialization Vulnerabilities in Java
Exploiting Deserialization Vulnerabilities in JavaExploiting Deserialization Vulnerabilities in Java
Exploiting Deserialization Vulnerabilities in Java
 
Oh CSS! - 5 Quick Things
Oh CSS! - 5 Quick ThingsOh CSS! - 5 Quick Things
Oh CSS! - 5 Quick Things
 
Enjoyable Front-end Development with Reagent
Enjoyable Front-end Development with ReagentEnjoyable Front-end Development with Reagent
Enjoyable Front-end Development with Reagent
 
Understanding Information Architecture
Understanding Information ArchitectureUnderstanding Information Architecture
Understanding Information Architecture
 
Internet Hall of Fame: Things to Know about the World of Internet Companies
Internet Hall of Fame: Things to Know about the World of Internet CompaniesInternet Hall of Fame: Things to Know about the World of Internet Companies
Internet Hall of Fame: Things to Know about the World of Internet Companies
 
Impact-driven Scrum Delivery at Scrum gathering Phoenix 2015
Impact-driven Scrum Delivery at Scrum gathering Phoenix 2015Impact-driven Scrum Delivery at Scrum gathering Phoenix 2015
Impact-driven Scrum Delivery at Scrum gathering Phoenix 2015
 
Big Data: Architectures and Approaches
Big Data: Architectures and ApproachesBig Data: Architectures and Approaches
Big Data: Architectures and Approaches
 
Barely Enough Design
Barely Enough DesignBarely Enough Design
Barely Enough Design
 
Is your data on the cloud at risk?
Is your data on the cloud at risk?Is your data on the cloud at risk?
Is your data on the cloud at risk?
 
3D 프린터 종류와 특징에 관한 리포트
3D 프린터 종류와 특징에 관한 리포트3D 프린터 종류와 특징에 관한 리포트
3D 프린터 종류와 특징에 관한 리포트
 
Scala - the good, the bad and the very ugly
Scala - the good, the bad and the very uglyScala - the good, the bad and the very ugly
Scala - the good, the bad and the very ugly
 

Similar to Building offline web applications

Buildingsocialanalyticstoolwithmongodb
BuildingsocialanalyticstoolwithmongodbBuildingsocialanalyticstoolwithmongodb
Buildingsocialanalyticstoolwithmongodb
MongoDB APAC
 
Progressive downloads and rendering (Stoyan Stefanov)
Progressive downloads and rendering (Stoyan Stefanov)Progressive downloads and rendering (Stoyan Stefanov)
Progressive downloads and rendering (Stoyan Stefanov)
Ontico
 
Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nl
bartzon
 
Tales from the Field
Tales from the FieldTales from the Field
Tales from the Field
MongoDB
 

Similar to Building offline web applications (20)

Buildingsocialanalyticstoolwithmongodb
BuildingsocialanalyticstoolwithmongodbBuildingsocialanalyticstoolwithmongodb
Buildingsocialanalyticstoolwithmongodb
 
CSS and image optimization
CSS and image optimizationCSS and image optimization
CSS and image optimization
 
PostgreSQL - масштабирование в моде, Valentine Gogichashvili (Zalando SE)
PostgreSQL - масштабирование в моде, Valentine Gogichashvili (Zalando SE)PostgreSQL - масштабирование в моде, Valentine Gogichashvili (Zalando SE)
PostgreSQL - масштабирование в моде, Valentine Gogichashvili (Zalando SE)
 
Creating PostgreSQL-as-a-Service at Scale
Creating PostgreSQL-as-a-Service at ScaleCreating PostgreSQL-as-a-Service at Scale
Creating PostgreSQL-as-a-Service at Scale
 
Progressive Downloads and Rendering
Progressive Downloads and RenderingProgressive Downloads and Rendering
Progressive Downloads and Rendering
 
Web Development: The Next Five Years
Web Development: The Next Five YearsWeb Development: The Next Five Years
Web Development: The Next Five Years
 
Crafting Evolvable Api Responses
Crafting Evolvable Api ResponsesCrafting Evolvable Api Responses
Crafting Evolvable Api Responses
 
Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...
Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...
Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...
 
Progressive downloads and rendering (Stoyan Stefanov)
Progressive downloads and rendering (Stoyan Stefanov)Progressive downloads and rendering (Stoyan Stefanov)
Progressive downloads and rendering (Stoyan Stefanov)
 
Into The Box 2018 Ortus Keynote
Into The Box 2018 Ortus KeynoteInto The Box 2018 Ortus Keynote
Into The Box 2018 Ortus Keynote
 
MongoDB: Comparing WiredTiger In-Memory Engine to Redis
MongoDB: Comparing WiredTiger In-Memory Engine to RedisMongoDB: Comparing WiredTiger In-Memory Engine to Redis
MongoDB: Comparing WiredTiger In-Memory Engine to Redis
 
Everything is Awesome - Cutting the Corners off the Web
Everything is Awesome - Cutting the Corners off the WebEverything is Awesome - Cutting the Corners off the Web
Everything is Awesome - Cutting the Corners off the Web
 
Diazo: Bridging Designers and Programmers
Diazo: Bridging Designers and ProgrammersDiazo: Bridging Designers and Programmers
Diazo: Bridging Designers and Programmers
 
Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nl
 
FOXX - a Javascript application framework on top of ArangoDB
FOXX - a Javascript application framework on top of ArangoDBFOXX - a Javascript application framework on top of ArangoDB
FOXX - a Javascript application framework on top of ArangoDB
 
SQL vs NoSQL
SQL vs NoSQLSQL vs NoSQL
SQL vs NoSQL
 
HTML5, just another presentation :)
HTML5, just another presentation :)HTML5, just another presentation :)
HTML5, just another presentation :)
 
Tales from the Field
Tales from the FieldTales from the Field
Tales from the Field
 
Course Tech 2013, Sasha Vodnik, A Crash Course in HTML5
Course Tech 2013, Sasha Vodnik, A Crash Course in HTML5Course Tech 2013, Sasha Vodnik, A Crash Course in HTML5
Course Tech 2013, Sasha Vodnik, A Crash Course in HTML5
 
Past, Present and Future of Data Processing in Apache Hadoop
Past, Present and Future of Data Processing in Apache HadoopPast, Present and Future of Data Processing in Apache Hadoop
Past, Present and Future of Data Processing in Apache Hadoop
 

More from Thoughtworks

More from Thoughtworks (20)

Design System as a Product
Design System as a ProductDesign System as a Product
Design System as a Product
 
Designers, Developers & Dogs
Designers, Developers & DogsDesigners, Developers & Dogs
Designers, Developers & Dogs
 
Cloud-first for fast innovation
Cloud-first for fast innovationCloud-first for fast innovation
Cloud-first for fast innovation
 
More impact with flexible teams
More impact with flexible teamsMore impact with flexible teams
More impact with flexible teams
 
Culture of Innovation
Culture of InnovationCulture of Innovation
Culture of Innovation
 
Dual-Track Agile
Dual-Track AgileDual-Track Agile
Dual-Track Agile
 
Developer Experience
Developer ExperienceDeveloper Experience
Developer Experience
 
When we design together
When we design togetherWhen we design together
When we design together
 
Hardware is hard(er)
Hardware is hard(er)Hardware is hard(er)
Hardware is hard(er)
 
Customer-centric innovation enabled by cloud
 Customer-centric innovation enabled by cloud Customer-centric innovation enabled by cloud
Customer-centric innovation enabled by cloud
 
Amazon's Culture of Innovation
Amazon's Culture of InnovationAmazon's Culture of Innovation
Amazon's Culture of Innovation
 
When in doubt, go live
When in doubt, go liveWhen in doubt, go live
When in doubt, go live
 
Don't cross the Rubicon
Don't cross the RubiconDon't cross the Rubicon
Don't cross the Rubicon
 
Error handling
Error handlingError handling
Error handling
 
Your test coverage is a lie!
Your test coverage is a lie!Your test coverage is a lie!
Your test coverage is a lie!
 
Docker container security
Docker container securityDocker container security
Docker container security
 
Redefining the unit
Redefining the unitRedefining the unit
Redefining the unit
 
Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22
 
A Tribute to Turing
A Tribute to TuringA Tribute to Turing
A Tribute to Turing
 
Rsa maths worked out
Rsa maths worked outRsa maths worked out
Rsa maths worked out
 

Recently uploaded

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 

Recently uploaded (20)

Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 

Building offline web applications

  • 1. X C o n f | S e p t e m b e r 2 0 1 4 BUILDING OFFLINE WEB APPS 2 case studies
  • 3. 3
  • 4. SUPERMARKET Java, Oracle Stock Ordering System Commodity Tablets Chrome, JavaScript
  • 5. 5
  • 6.
  • 7. Update Order Quantity: 5 Product: 34273
  • 8. Queue Update Order Quantity: 5 Product: 34273 Update Order! Update Order! ! Update Order! ! Quantity: 5! Product: 34273! Update ! Order Quantity: 5 Product: 34273 Quantity: 5! Product: 34273! Quantity: 5! Product: 34273!
  • 9. Queue Update Order Quantity: 5 Product: 34273 Update Order! Update Order! ! Update Order! ! Quantity: 5! Product: 34273! Update ! Order Quantity: 5 Quantity: 5! Product: 34273! Quantity: 5! Product: 34273! Message Processor Product: 34273
  • 10. Queue Update Order Quantity: 5 Product: 34273 Update Order! Update Order! ! Update Order! ! Quantity: 5! Product: 34273! Update ! Order Quantity: 5 Quantity: 5! Product: 34273! Quantity: 5! Product: 34273! Message Processor Product: 34273
  • 11. 11 // Store localStorage.town = "Hamburg"; // Retrieve alert(localStorage.town); Web Storage 5MB+
  • 12. <<<<<<< HEAD Hamburg is better than Manchester ======= Manchester is better than Hamburg >>>>>>> d237ef28dc3fab5dcccc63f580bfa7780f
  • 13. 13
  • 14. 14
  • 16. 16
  • 17. js html css APPCACHE
  • 18. js html css APPCACHE
  • 19. js html css APPCACHE
  • 20. js html css v.254 APPCACHE
  • 21. 1 <!doctype html> 2 <html ... manifest="cache.manifest"> 1 CACHE MANIFEST 2 # rev 12 -­‐ 2014-­‐09-­‐22T15:28:08.540Z 4 CACHE: 5 404.html 6 favicon.ico 7 scripts/scripts.js 8 scripts/vendor.js 9 styles/application.css 10 index.html 12 NETWORK: 13 * 15 FALLBACK: 16 / /offline.html
  • 22. Update Order Quantity: 5 Product: 34273 { "uid": "aaaaaaaa-­‐bbbb-­‐cccc-­‐dddd-­‐eeeeeeeeeeee", "meta": {...}, "title": "Quality sample XYZ", "image": "aaaaaaaa-­‐bbbb-­‐cccc-­‐dddd-­‐eeeeeeeeeeee.png", "content": { "sections": [{ "uid": "aaaaaaaa-­‐bbbb-­‐cccc-­‐dddd-­‐eeeeeeeeeeee" "comments": [], "title": "A block title", "blocks": [{ "uid": "aaaaaaaa-­‐bbbb-­‐cccc-­‐dddd-­‐eeeeeeeeeeee", "title": "Material -­‐ Lining", "type": "MATERIAL”, "colours": [ { "code": "18-­‐3015 TPX", "colourName": "Amethyst", "comments": [], "standard": "Pantone", "uid": "aaaaaaaa-­‐bbbb-­‐cccc-­‐dddd-­‐eeeeeeeeeeee" } ], "compositions": [{ "uid": "aaaaaaaa-­‐bbbb-­‐cccc-­‐dddd-­‐eeeeeeeeeeee" "comments": [ { text: "thread count seems off" ], "group": "Vegetable fibres", "name": "Cotton", "percentage": 100, "sustainability": { value: “Organic” }, }] }] }] } }
  • 23. 23
  • 24. 24
  • 29.
  • 30. 30
  • 31. Set up file system + request quota Store file locally Update image tag Store file locally Upload image Download file from server Download image Upload file to server Update image tag <img src="filesystem:http://192.168.50.4/ persistent/3ebc23e1-­‐10bf-­‐5b60-­‐440.jpg">
  • 32. 50% of current disk space available to browser 20% of that is the maximum available to a single web app
  • 33. OR ?
  • 34. Potential for data conflicts? Size of data? Sensitive data? OR ? Which browsers required? Structure of data? Amount of functionality to work offline?
  • 38. THANK YOU BIRGITTA @birgitta410 ROB @robmiles0