SlideShare una empresa de Scribd logo
1 de 30
RESPONSIVE DESIGN
AND THE MODERN WEB APPLICATION
RESPONSIVE DESIGN
MOBILEFIRSTRESPONSIVEDESIGN
ASSUMPTIONS BASED ON SCREEN SIZE
MOBILEFIRSTRESPONSIVEDESIGN
ON THE GO NOT TOUCH INTERFACEHIGH RES IMAGES
ASSUMPTIONS BASED ON SCREEN SIZE
IT’S ALL ABOUT DEFINING THE CONTEXT
Find store...
1 2 3 4 ...
MOBILEFIRSTRESPONSIVEDESIGN
ON THE GO
Find store...
1 2 3 4 ...
DEVICE CONTEXT
MOBILEFIRSTRESPONSIVEDESIGN
CONTEXT
Find store...
1 2 3 4 ...
Find store...
1 2 3 4 ...
Find store...
1 2 3 ...
DEVICE CONTEXT
MOBILEFIRSTRESPONSIVEDESIGN
CONTEXT
Find store...
1 2 3 4 ...
Find store...
1 2 3 4 ...
Find store...
1 2 3 ...
GEOLOCATION AVAILABLE AND CHANGING: ON THE MOOVE!
DEVICE CONTEXT
MOBILEFIRSTRESPONSIVEDESIGN
CONTEXT
Find store...
1 2 3 4 ...
Find store...
1 2 3 4 ...
Find store...
1 2 3 ...
GEOLOCATION AVAILABLE AND CHANGING: ON THE MOOVE!
DODGY CONNECTION: SERVE LO-RES IMAGES
DEVICE CONTEXT
DEVICE CONTEXT
MOBILEFIRSTRESPONSIVEDESIGN
CONTEXT
Find store...
1 2 3 4 ...
Find store...
1 2 3 4 ...
Find store...
1 2 3 ...
GEOLOCATION AVAILABLE AND CHANGING: ON THE MOOVE!
DODGY CONNECTION: SERVE LO-RES IMAGES
TOUCH SCREEN: SUPPORT GESTURES
DEVICE CONTEXT
MOBILEFIRSTRESPONSIVEDESIGN
CONTEXT
Find store...
1 2 3 4 ...
Find store...
1 2 3 4 ...
Find store...
1 2 3 ...
GEOLOCATION AVAILABLE AND CHANGING: ON THE MOOVE!
DODGY CONNECTION: SERVE LO-RES IMAGES
HARDWARE ACCESS: INTEGRATE WITH CONTACTS
TOUCH SCREEN: SUPPORT GESTURES
DEVICE CONTEXT
MOBILEFIRSTRESPONSIVEDESIGN
Find store...
1 2 3 4 ...
Find store...
1 2 3 4 ...
Find store...
1 2 3 ...
CONTEXT
GEOLOCATION AVAILABLE AND CHANGING: ON THE MOOVE!
DODGY CONNECTION: SERVE LO-RES IMAGES
HARDWARE ACCESS: INTEGRATE WITH CONTACTS
WEBGL AVAILABLE: SHOW 3D STREET VIEW
TOUCH SCREEN: SUPPORT GESTURES
BUSINESS CONTEXT
MOBILEFIRSTRESPONSIVEDESIGN
AT THE AIRPORT
BUSINESS CONTEXT
MOBILEFIRSTRESPONSIVEDESIGN
CONTEXT
BUSINESS CONTEXT
MOBILEFIRSTRESPONSIVEDESIGN
CONTEXT
KNOWN IP-RANGE: AT THE AIRPORT
BUSINESS CONTEXT
MOBILEFIRSTRESPONSIVEDESIGN
CONTEXT
KNOWN IP-RANGE: AT THE AIRPORT
KNOWN FLIGHT NUMBER: LAST CHECK-IN
BUSINESS CONTEXT
PUTTING IT ALL TOGETHER
MOBILEFIRSTRESPONSIVEDESIGN
KNOWN IP-RANGE: AT THE AIRPORT
KNOWN FLIGHT NUMBER: LAST CHECK-IN
CONTEXT
GEOLOCATION AVAILABLE AND CHANGING: ON THE MOOVE!
DODGY CONNECTION: SERVE LO-RES IMAGES
HARDWARE ACCESS: INTEGRATE WITH CONTACTS
WEBGL AVAILABLE: SHOW 3D STREET VIEW
DEVICEBUSINESS
...
TOUCH SCREEN: SUPPORT GESTURES
MOBILEFIRSTRESPONSIVEDESIGN
CSS&MEDIAQUERIESWEBCOMPONENTS
RESPONSIVE WEB DESIGN 2.0
“We want to be able to build truly responsive user interfaces, without letting
content and functionality targeting a specific screen size, affect the
performance of another - no matter how rich it is.”
RESPONSIVE WEB DESIGN 2.0
Components will be aware of all their own prerequisites:
• Content - Data source (JSON)
• Layout - Client side template and styling (HTML & CSS)
• Behaviour - Functionality layer if needed (JS)
RESPONSIVE WEB DESIGN 2.0
Components will be aware of all their own prerequisites:
• Content - Data source (JSON)
• Layout - Client side template and styling (HTML & CSS)
• Behaviour - Functionality layer if needed (JS)
• RWD2 - Configurable breakpoints (to match other RWD concepts in place)
RESPONSIVE WEB DESIGN 2.0
Components will be aware of all their own prerequisites:
• Content - Data source (JSON)
• Layout - Client side template and styling (HTML & CSS)
• Behaviour - Functionality layer if needed (JS)
• RWD2 - Configurable breakpoints (to match other RWD concepts in place)
AngularJS will give us almost all we need to contain these on a per element
basis in a structured way:
<section
ng-controller="SomeComponentController" // Model
ng-include="'/some/component/template.html'" // Layout
ng-click="handleComponentClick($event);" // Behaviour
/>
RESPONSIVE WEB DESIGN 2.0
Include the module:
Set up breakpoints matching your CSS:
Assign the breakpoints to your DOM:
github.com/mordendk/rwd20
app.config(function(responsiveServiceProvider) {
responsiveServiceProvider.addBreakpoint('small', 0, 600);
responsiveServiceProvider.addBreakpoint('medium', 600, 960);
responsiveServiceProvider.addBreakpoint('large', 960, 1600);
responsiveServiceProvider.addBreakpoint('xlarge', 1600, 99999);
});
var app = angular.module('app', ['rwd20']);
<section class="related-column" responsive-breakpoint="'large'">
<!-- Element only initialized when 960 < window.innerWidth <= 1600 -->
</section>
RESPONSIVE WEB DESIGN 2.0
Components will be aware of all their own prerequisites:
• Content - Data source (JSON)
• Layout - Client side template and styling (HTML & CSS)
• Behaviour - Functionality layer if needed (JS)
• RWD2 - Configurable breakpoints (to match other RWD concepts in place)
AngularJS will give us almost all we need to contain these on a per element
basis in a structured way:
<section
ng-controller="SomeComponentController" // Model
ng-include="'/some/component/template.html'" // Layout
ng-click="handleComponentClick($event);" // Behaviour
responsive-breakpoint="'large'" // Breakpoint
/>
RESPONSIVE WEB DESIGN 2.0
// Simple image for small screens
<img
responsive-breakpoint="'small'”
ng-src="/images/planet.png"
/>
RWD2 Components:
// Heavy SVG for medium screens and up
// (deferred d3, topojson, planetary and data)
<canvas
planet="/json/planet.json"
responsive-breakpoint="'medium,large'"
/>
// Optional related column
// (deferred template, json and images)
<section
model="/json/news.json"
ng-include="'/partials/news.html'"
responsive-breakpoint="'large'"
/>
jsallthethings.com/dev/rwd20-demo
CONSIDERATIONS
REQUESTS
ONLY ADAPTIVE TO SCREEN SIZE
UX, SEO & ANALYTICS
?

Más contenido relacionado

Similar a Modern Web App Responsive Design and Context Awareness

Mini project final presentation
Mini project final presentationMini project final presentation
Mini project final presentationGianlucaCapozzi1
 
Easy2park - A smarter way to find a parking lot
Easy2park - A smarter way to find a parking lotEasy2park - A smarter way to find a parking lot
Easy2park - A smarter way to find a parking lotDaniele Davoli
 
Angular js mobile jsday 2014 - Verona 14 may
Angular js mobile   jsday 2014 - Verona 14 mayAngular js mobile   jsday 2014 - Verona 14 may
Angular js mobile jsday 2014 - Verona 14 mayLuciano Amodio
 
Bring Your Web App to the Next Level. Wprowadzenie do Progressive Web App
Bring Your Web App to the Next Level. Wprowadzenie do Progressive Web AppBring Your Web App to the Next Level. Wprowadzenie do Progressive Web App
Bring Your Web App to the Next Level. Wprowadzenie do Progressive Web AppThe Software House
 
Devon 2011-f-1 반응형 웹 디자인
Devon 2011-f-1  반응형 웹 디자인Devon 2011-f-1  반응형 웹 디자인
Devon 2011-f-1 반응형 웹 디자인Daum DNA
 
MongoDB Mobile - Bringing the Power of MongoDB to your Device
MongoDB Mobile - Bringing the Power of MongoDB to your DeviceMongoDB Mobile - Bringing the Power of MongoDB to your Device
MongoDB Mobile - Bringing the Power of MongoDB to your DeviceMongoDB
 
Tomer kimhi mobmodcon-nov2015-integrating new camera hardware
Tomer kimhi mobmodcon-nov2015-integrating new camera hardwareTomer kimhi mobmodcon-nov2015-integrating new camera hardware
Tomer kimhi mobmodcon-nov2015-integrating new camera hardwareRon Munitz
 
How to Develop a Rich, Native-quality User Experience for Mobile Using Web St...
How to Develop a Rich, Native-quality User Experience for Mobile Using Web St...How to Develop a Rich, Native-quality User Experience for Mobile Using Web St...
How to Develop a Rich, Native-quality User Experience for Mobile Using Web St...David Kaneda
 
Serving Mobile Apps from Content Management Systems
Serving Mobile Apps from Content Management SystemsServing Mobile Apps from Content Management Systems
Serving Mobile Apps from Content Management SystemsSencha
 
Stocktwits & Responsive Web Design, social network meets flexible framework
Stocktwits & Responsive Web Design, social network meets flexible frameworkStocktwits & Responsive Web Design, social network meets flexible framework
Stocktwits & Responsive Web Design, social network meets flexible frameworkJohn Strott
 
Mobile Enterprise Applications
Mobile Enterprise ApplicationsMobile Enterprise Applications
Mobile Enterprise ApplicationsJason Conger
 
Story about module management with angular.js
Story about module management with angular.jsStory about module management with angular.js
Story about module management with angular.jsDavid Amend
 
Aurea Vision & Aurea Consulting: technology proposal
Aurea Vision & Aurea Consulting: technology proposalAurea Vision & Aurea Consulting: technology proposal
Aurea Vision & Aurea Consulting: technology proposalAnna Doroshenko
 
Zero-downtime deployment of Micro-services with Kubernetes
Zero-downtime deployment of Micro-services with KubernetesZero-downtime deployment of Micro-services with Kubernetes
Zero-downtime deployment of Micro-services with KubernetesWojciech Barczyński
 
You know what iMEAN? Using MEAN stack for application dev on Informix
You know what iMEAN? Using MEAN stack for application dev on InformixYou know what iMEAN? Using MEAN stack for application dev on Informix
You know what iMEAN? Using MEAN stack for application dev on InformixKeshav Murthy
 
Functional Animation with SVG - OpenWest 2018
Functional Animation with SVG - OpenWest 2018Functional Animation with SVG - OpenWest 2018
Functional Animation with SVG - OpenWest 2018Duke Speer
 
Introduction To Service Cloud Snapins SDK
Introduction To Service Cloud Snapins SDKIntroduction To Service Cloud Snapins SDK
Introduction To Service Cloud Snapins SDKMohith Shrivastava
 

Similar a Modern Web App Responsive Design and Context Awareness (20)

Intro Angular Ionic
Intro Angular Ionic Intro Angular Ionic
Intro Angular Ionic
 
Mini project final presentation
Mini project final presentationMini project final presentation
Mini project final presentation
 
Easy2park - A smarter way to find a parking lot
Easy2park - A smarter way to find a parking lotEasy2park - A smarter way to find a parking lot
Easy2park - A smarter way to find a parking lot
 
Angular js mobile jsday 2014 - Verona 14 may
Angular js mobile   jsday 2014 - Verona 14 mayAngular js mobile   jsday 2014 - Verona 14 may
Angular js mobile jsday 2014 - Verona 14 may
 
Bring Your Web App to the Next Level. Wprowadzenie do Progressive Web App
Bring Your Web App to the Next Level. Wprowadzenie do Progressive Web AppBring Your Web App to the Next Level. Wprowadzenie do Progressive Web App
Bring Your Web App to the Next Level. Wprowadzenie do Progressive Web App
 
Devon 2011-f-1 반응형 웹 디자인
Devon 2011-f-1  반응형 웹 디자인Devon 2011-f-1  반응형 웹 디자인
Devon 2011-f-1 반응형 웹 디자인
 
MongoDB Mobile - Bringing the Power of MongoDB to your Device
MongoDB Mobile - Bringing the Power of MongoDB to your DeviceMongoDB Mobile - Bringing the Power of MongoDB to your Device
MongoDB Mobile - Bringing the Power of MongoDB to your Device
 
Tomer kimhi mobmodcon-nov2015-integrating new camera hardware
Tomer kimhi mobmodcon-nov2015-integrating new camera hardwareTomer kimhi mobmodcon-nov2015-integrating new camera hardware
Tomer kimhi mobmodcon-nov2015-integrating new camera hardware
 
How to Develop a Rich, Native-quality User Experience for Mobile Using Web St...
How to Develop a Rich, Native-quality User Experience for Mobile Using Web St...How to Develop a Rich, Native-quality User Experience for Mobile Using Web St...
How to Develop a Rich, Native-quality User Experience for Mobile Using Web St...
 
Serving Mobile Apps from Content Management Systems
Serving Mobile Apps from Content Management SystemsServing Mobile Apps from Content Management Systems
Serving Mobile Apps from Content Management Systems
 
Stocktwits & Responsive Web Design, social network meets flexible framework
Stocktwits & Responsive Web Design, social network meets flexible frameworkStocktwits & Responsive Web Design, social network meets flexible framework
Stocktwits & Responsive Web Design, social network meets flexible framework
 
Mobile Enterprise Applications
Mobile Enterprise ApplicationsMobile Enterprise Applications
Mobile Enterprise Applications
 
Story about module management with angular.js
Story about module management with angular.jsStory about module management with angular.js
Story about module management with angular.js
 
Responsive Enhancement
Responsive EnhancementResponsive Enhancement
Responsive Enhancement
 
The Enterprise Dilemma: Native vs. Web
The Enterprise Dilemma: Native vs. WebThe Enterprise Dilemma: Native vs. Web
The Enterprise Dilemma: Native vs. Web
 
Aurea Vision & Aurea Consulting: technology proposal
Aurea Vision & Aurea Consulting: technology proposalAurea Vision & Aurea Consulting: technology proposal
Aurea Vision & Aurea Consulting: technology proposal
 
Zero-downtime deployment of Micro-services with Kubernetes
Zero-downtime deployment of Micro-services with KubernetesZero-downtime deployment of Micro-services with Kubernetes
Zero-downtime deployment of Micro-services with Kubernetes
 
You know what iMEAN? Using MEAN stack for application dev on Informix
You know what iMEAN? Using MEAN stack for application dev on InformixYou know what iMEAN? Using MEAN stack for application dev on Informix
You know what iMEAN? Using MEAN stack for application dev on Informix
 
Functional Animation with SVG - OpenWest 2018
Functional Animation with SVG - OpenWest 2018Functional Animation with SVG - OpenWest 2018
Functional Animation with SVG - OpenWest 2018
 
Introduction To Service Cloud Snapins SDK
Introduction To Service Cloud Snapins SDKIntroduction To Service Cloud Snapins SDK
Introduction To Service Cloud Snapins SDK
 

Último

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 

Último (20)

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 

Modern Web App Responsive Design and Context Awareness

  • 1. RESPONSIVE DESIGN AND THE MODERN WEB APPLICATION
  • 4. ASSUMPTIONS BASED ON SCREEN SIZE
  • 5. MOBILEFIRSTRESPONSIVEDESIGN ON THE GO NOT TOUCH INTERFACEHIGH RES IMAGES ASSUMPTIONS BASED ON SCREEN SIZE
  • 6. IT’S ALL ABOUT DEFINING THE CONTEXT
  • 7. Find store... 1 2 3 4 ... MOBILEFIRSTRESPONSIVEDESIGN ON THE GO Find store... 1 2 3 4 ... DEVICE CONTEXT
  • 8. MOBILEFIRSTRESPONSIVEDESIGN CONTEXT Find store... 1 2 3 4 ... Find store... 1 2 3 4 ... Find store... 1 2 3 ... DEVICE CONTEXT
  • 9. MOBILEFIRSTRESPONSIVEDESIGN CONTEXT Find store... 1 2 3 4 ... Find store... 1 2 3 4 ... Find store... 1 2 3 ... GEOLOCATION AVAILABLE AND CHANGING: ON THE MOOVE! DEVICE CONTEXT
  • 10. MOBILEFIRSTRESPONSIVEDESIGN CONTEXT Find store... 1 2 3 4 ... Find store... 1 2 3 4 ... Find store... 1 2 3 ... GEOLOCATION AVAILABLE AND CHANGING: ON THE MOOVE! DODGY CONNECTION: SERVE LO-RES IMAGES DEVICE CONTEXT
  • 11. DEVICE CONTEXT MOBILEFIRSTRESPONSIVEDESIGN CONTEXT Find store... 1 2 3 4 ... Find store... 1 2 3 4 ... Find store... 1 2 3 ... GEOLOCATION AVAILABLE AND CHANGING: ON THE MOOVE! DODGY CONNECTION: SERVE LO-RES IMAGES TOUCH SCREEN: SUPPORT GESTURES
  • 12. DEVICE CONTEXT MOBILEFIRSTRESPONSIVEDESIGN CONTEXT Find store... 1 2 3 4 ... Find store... 1 2 3 4 ... Find store... 1 2 3 ... GEOLOCATION AVAILABLE AND CHANGING: ON THE MOOVE! DODGY CONNECTION: SERVE LO-RES IMAGES HARDWARE ACCESS: INTEGRATE WITH CONTACTS TOUCH SCREEN: SUPPORT GESTURES
  • 13. DEVICE CONTEXT MOBILEFIRSTRESPONSIVEDESIGN Find store... 1 2 3 4 ... Find store... 1 2 3 4 ... Find store... 1 2 3 ... CONTEXT GEOLOCATION AVAILABLE AND CHANGING: ON THE MOOVE! DODGY CONNECTION: SERVE LO-RES IMAGES HARDWARE ACCESS: INTEGRATE WITH CONTACTS WEBGL AVAILABLE: SHOW 3D STREET VIEW TOUCH SCREEN: SUPPORT GESTURES
  • 18. MOBILEFIRSTRESPONSIVEDESIGN CONTEXT KNOWN IP-RANGE: AT THE AIRPORT KNOWN FLIGHT NUMBER: LAST CHECK-IN BUSINESS CONTEXT
  • 19. PUTTING IT ALL TOGETHER
  • 20. MOBILEFIRSTRESPONSIVEDESIGN KNOWN IP-RANGE: AT THE AIRPORT KNOWN FLIGHT NUMBER: LAST CHECK-IN CONTEXT GEOLOCATION AVAILABLE AND CHANGING: ON THE MOOVE! DODGY CONNECTION: SERVE LO-RES IMAGES HARDWARE ACCESS: INTEGRATE WITH CONTACTS WEBGL AVAILABLE: SHOW 3D STREET VIEW DEVICEBUSINESS ... TOUCH SCREEN: SUPPORT GESTURES
  • 22. RESPONSIVE WEB DESIGN 2.0 “We want to be able to build truly responsive user interfaces, without letting content and functionality targeting a specific screen size, affect the performance of another - no matter how rich it is.”
  • 23. RESPONSIVE WEB DESIGN 2.0 Components will be aware of all their own prerequisites: • Content - Data source (JSON) • Layout - Client side template and styling (HTML & CSS) • Behaviour - Functionality layer if needed (JS)
  • 24. RESPONSIVE WEB DESIGN 2.0 Components will be aware of all their own prerequisites: • Content - Data source (JSON) • Layout - Client side template and styling (HTML & CSS) • Behaviour - Functionality layer if needed (JS) • RWD2 - Configurable breakpoints (to match other RWD concepts in place)
  • 25. RESPONSIVE WEB DESIGN 2.0 Components will be aware of all their own prerequisites: • Content - Data source (JSON) • Layout - Client side template and styling (HTML & CSS) • Behaviour - Functionality layer if needed (JS) • RWD2 - Configurable breakpoints (to match other RWD concepts in place) AngularJS will give us almost all we need to contain these on a per element basis in a structured way: <section ng-controller="SomeComponentController" // Model ng-include="'/some/component/template.html'" // Layout ng-click="handleComponentClick($event);" // Behaviour />
  • 26. RESPONSIVE WEB DESIGN 2.0 Include the module: Set up breakpoints matching your CSS: Assign the breakpoints to your DOM: github.com/mordendk/rwd20 app.config(function(responsiveServiceProvider) { responsiveServiceProvider.addBreakpoint('small', 0, 600); responsiveServiceProvider.addBreakpoint('medium', 600, 960); responsiveServiceProvider.addBreakpoint('large', 960, 1600); responsiveServiceProvider.addBreakpoint('xlarge', 1600, 99999); }); var app = angular.module('app', ['rwd20']); <section class="related-column" responsive-breakpoint="'large'"> <!-- Element only initialized when 960 < window.innerWidth <= 1600 --> </section>
  • 27. RESPONSIVE WEB DESIGN 2.0 Components will be aware of all their own prerequisites: • Content - Data source (JSON) • Layout - Client side template and styling (HTML & CSS) • Behaviour - Functionality layer if needed (JS) • RWD2 - Configurable breakpoints (to match other RWD concepts in place) AngularJS will give us almost all we need to contain these on a per element basis in a structured way: <section ng-controller="SomeComponentController" // Model ng-include="'/some/component/template.html'" // Layout ng-click="handleComponentClick($event);" // Behaviour responsive-breakpoint="'large'" // Breakpoint />
  • 28. RESPONSIVE WEB DESIGN 2.0 // Simple image for small screens <img responsive-breakpoint="'small'” ng-src="/images/planet.png" /> RWD2 Components: // Heavy SVG for medium screens and up // (deferred d3, topojson, planetary and data) <canvas planet="/json/planet.json" responsive-breakpoint="'medium,large'" /> // Optional related column // (deferred template, json and images) <section model="/json/news.json" ng-include="'/partials/news.html'" responsive-breakpoint="'large'" /> jsallthethings.com/dev/rwd20-demo
  • 29. CONSIDERATIONS REQUESTS ONLY ADAPTIVE TO SCREEN SIZE UX, SEO & ANALYTICS
  • 30. ?