SlideShare a Scribd company logo
1 of 26
Qui suis-je ?
Ezéchiel Amen AGBLA
✅ Ingénieur en Électronique et Systèmes
Embarqués
✅ Directeur des Opérations et
Développeur Fullstack JavaScript à
Vyconsulting
✅ Enseignant à l’Université Privée de
Fès (Maroc)
twitter.com/ezchilamen
github.com/amilamen
Qu’est-ce qu’une PWA ?
Une Progressive Web Application (PWA) est un site web qui utilise
les capacités modernes des mobiles (Notifications push, GPS,
Appareil photo…) pour offrir aux utilisateurs une expérience
semblable à celle d’une application mobile native.
Pourquoi utiliser une PWA ?
✅ Une seule application d’où la notion de progressive
✅ La sécurité
✅ La rapidité
✅ L’engagement
✅ Le référencement
✅ Le fonctionnement hors-ligne
✅ L’installation d’un raccourci
Quels sont les principes de
développement d’une PWA ?
✅ Le manifeste
✅ Le HTTPS
✅ La mise en place d’un Service Workers
✅ L’engagement
Ionic Framework
Framework Ionic
UI Components for native mobile apps, PWAs, and even
Desktop
Pre-built Gestures and Animations
Platform Continuity for iOS and Material Design
Full access to all Native APIs and Plugins
A large, vibrant world-wide community
UI Components (100+)
Gestures & Animations
Swiping gestures between views
Sliding items for reveals
Carousel slides for App intro
Platform Continuity
A N D R O I D I O S
Platform-aware components
Look-and-feel at home
Up to date with latest UI design
Native Access
Community driven plugin ecosystem
@ionic-native to integrate with Ionic
Can integrate with custom needs and APIs
Framework/components are open source (MIT)
Native layers (Cordova/Capacitor) also open source
Open Web Standards - available to everyone
Open Source everything
Integration with Popular Frameworks
Angular and Vue currently, more to come
Use framework specific tooling to better integrate with ecosystem
Ionic handles the UI/UX, frameworks handle the logic layer
Angular Framework
One framework.
Mobile & desktop.
Framework Angular
Angular is an application design framework and development
platform for creating efficient and sophisticated single-page
apps.
Main Concepts
✅ Components
✅ Templates
✅ Directives
✅ Dependency Injection
Built-in features
✅ Routing & Navigation
✅ Forms
✅ HTTP Client
✅ Internationalization (i18n)
✅ Animations
✅ Schematics
✅ Service Workers & PWA
What is Capacitor ?
The new Native Bridge for Web Apps
What is Capacitor ?
Cross-platform runtime for iOS, Android, Electron and Web
Web-focused APIs that stay close to the Standards
Modern Native tooling for easy native project maintenance
Inspiration from Cordova, React Native, and Turbolinks
Add to any project
$ npm install @capacitor/core @capacitor/cli --save
$ npx cap init
$ npx cap add {ios, android, web, electron}
$ npx cap open
import { Plugins, CameraResultType } from '@capacitor/core';
export class MyClass {
const { Camera } = Plugins;
async takePicture() {
const image = await Camera.getPhoto({
quality: 90,
allowEditing: true,
resultType: CameraResultType.Uri
});
var imageUrl = image.webPath;
imageElement.src = imageUrl;
}
}
import { Plugins, FilesystemDirectory, FilesystemEncoding } from '@capacitor/core';
export class MyClass {
const { Filesystem } = Plugins;
async fileRead() {
let contents = await Filesystem.readFile({
path: 'secrets/text.txt',
directory: FilesystemDirectory.Documents,
encoding: FilesystemEncoding.UTF8
});
console.log(contents);
}
}
👩🏽💻 ☕️🚀 Instant Coding 🚀☕️🏽🏽💻
M E R C I

More Related Content

What's hot

Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016Abdelrahman Omran
 
From Napkin to App: Rapidly Prototype and Build for Mobile in Days
From Napkin to App:  Rapidly Prototype and Build for Mobile in DaysFrom Napkin to App:  Rapidly Prototype and Build for Mobile in Days
From Napkin to App: Rapidly Prototype and Build for Mobile in DaysApigee | Google Cloud
 
Standardizing UI for LINE Service Admin Pages
Standardizing UI for LINE Service Admin PagesStandardizing UI for LINE Service Admin Pages
Standardizing UI for LINE Service Admin PagesLINE Corporation
 
Building a Progressive Web App
Building a  Progressive Web AppBuilding a  Progressive Web App
Building a Progressive Web AppIdo Green
 
Ionic App Platform Overview
Ionic App Platform Overview Ionic App Platform Overview
Ionic App Platform Overview Ionic Framework
 
Why & which mobile cross platform?
Why & which mobile cross platform?Why & which mobile cross platform?
Why & which mobile cross platform?Hazem Khaled
 
Building REST APIs that don't suck for modern day SPAs
Building REST APIs that don't suck for modern day SPAsBuilding REST APIs that don't suck for modern day SPAs
Building REST APIs that don't suck for modern day SPAsAbati Adewale
 
Building Cross Platform Mobile Apps
Building Cross Platform Mobile AppsBuilding Cross Platform Mobile Apps
Building Cross Platform Mobile AppsShailendra Chauhan
 
Reactive web applications using MeteorJS
Reactive web applications using MeteorJSReactive web applications using MeteorJS
Reactive web applications using MeteorJSNodeXperts
 
Cordova Developer Landscape 2015/09
Cordova Developer Landscape 2015/09Cordova Developer Landscape 2015/09
Cordova Developer Landscape 2015/09Carl Vorster
 
Transformação Digital com API Management
Transformação Digital com API ManagementTransformação Digital com API Management
Transformação Digital com API ManagementGustavo Zimmermann (MVP)
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web AppSubodh Garg
 
Mobile apps using meteor - Part 1
Mobile apps using meteor - Part 1Mobile apps using meteor - Part 1
Mobile apps using meteor - Part 1NodeXperts
 
Getting Started with Progressive Web Apps
Getting Started with Progressive Web AppsGetting Started with Progressive Web Apps
Getting Started with Progressive Web AppsBill Stavroulakis
 
WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...
WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...
WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...Alexandra Anghel
 
Appium - Reality check on the world’s leading Open Source Framework for Mobil...
Appium - Reality check on the world’s leading Open Source Framework for Mobil...Appium - Reality check on the world’s leading Open Source Framework for Mobil...
Appium - Reality check on the world’s leading Open Source Framework for Mobil...Asaf Saar
 
PWA - Progressive Web Apps
PWA - Progressive Web AppsPWA - Progressive Web Apps
PWA - Progressive Web AppsEdy Segura
 
Jws masterclass progressive web apps
Jws masterclass progressive web appsJws masterclass progressive web apps
Jws masterclass progressive web appsAlexandre Marreiros
 

What's hot (20)

Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
From Napkin to App: Rapidly Prototype and Build for Mobile in Days
From Napkin to App:  Rapidly Prototype and Build for Mobile in DaysFrom Napkin to App:  Rapidly Prototype and Build for Mobile in Days
From Napkin to App: Rapidly Prototype and Build for Mobile in Days
 
Standardizing UI for LINE Service Admin Pages
Standardizing UI for LINE Service Admin PagesStandardizing UI for LINE Service Admin Pages
Standardizing UI for LINE Service Admin Pages
 
Building a Progressive Web App
Building a  Progressive Web AppBuilding a  Progressive Web App
Building a Progressive Web App
 
Ionic App Platform Overview
Ionic App Platform Overview Ionic App Platform Overview
Ionic App Platform Overview
 
Why & which mobile cross platform?
Why & which mobile cross platform?Why & which mobile cross platform?
Why & which mobile cross platform?
 
Building REST APIs that don't suck for modern day SPAs
Building REST APIs that don't suck for modern day SPAsBuilding REST APIs that don't suck for modern day SPAs
Building REST APIs that don't suck for modern day SPAs
 
Building Cross Platform Mobile Apps
Building Cross Platform Mobile AppsBuilding Cross Platform Mobile Apps
Building Cross Platform Mobile Apps
 
Reactive web applications using MeteorJS
Reactive web applications using MeteorJSReactive web applications using MeteorJS
Reactive web applications using MeteorJS
 
Cordova Developer Landscape 2015/09
Cordova Developer Landscape 2015/09Cordova Developer Landscape 2015/09
Cordova Developer Landscape 2015/09
 
Transformação Digital com API Management
Transformação Digital com API ManagementTransformação Digital com API Management
Transformação Digital com API Management
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
Mobile apps using meteor - Part 1
Mobile apps using meteor - Part 1Mobile apps using meteor - Part 1
Mobile apps using meteor - Part 1
 
Getting Started with Progressive Web Apps
Getting Started with Progressive Web AppsGetting Started with Progressive Web Apps
Getting Started with Progressive Web Apps
 
WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...
WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...
WordCamp Athens 2017 - Building an E-commerce Progressive Web App with React ...
 
Appium - Reality check on the world’s leading Open Source Framework for Mobil...
Appium - Reality check on the world’s leading Open Source Framework for Mobil...Appium - Reality check on the world’s leading Open Source Framework for Mobil...
Appium - Reality check on the world’s leading Open Source Framework for Mobil...
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
PWA - Progressive Web Apps
PWA - Progressive Web AppsPWA - Progressive Web Apps
PWA - Progressive Web Apps
 
Jws masterclass progressive web apps
Jws masterclass progressive web appsJws masterclass progressive web apps
Jws masterclass progressive web apps
 

Similar to #Devcamp17: Développement d’une Progressive Web Application (PWA) avec le stack Ionic-Angular-Capacitor

Talk for DevFest 2021 - GDG Bénin
Talk for DevFest 2021 - GDG BéninTalk for DevFest 2021 - GDG Bénin
Talk for DevFest 2021 - GDG BéninEzéchiel Amen AGBLA
 
Progressive Web Apps –The Future of Apps
Progressive Web Apps –The Future of Apps   Progressive Web Apps –The Future of Apps
Progressive Web Apps –The Future of Apps Ashish Saxena
 
Preparation Guide on Full Stack Developer.pdf
Preparation Guide on Full Stack Developer.pdfPreparation Guide on Full Stack Developer.pdf
Preparation Guide on Full Stack Developer.pdfarjunnegi34
 
Native - Hybrid - Web Mobile Architectures
Native - Hybrid - Web Mobile ArchitecturesNative - Hybrid - Web Mobile Architectures
Native - Hybrid - Web Mobile ArchitecturesPhong Le Duy
 
Around mobile and web development At Latent.pptx
Around mobile and web development At Latent.pptxAround mobile and web development At Latent.pptx
Around mobile and web development At Latent.pptxLatentHQ1
 
10 Useful Frameworks to Build Hybrid Mobile Apps
10 Useful Frameworks to Build Hybrid Mobile Apps10 Useful Frameworks to Build Hybrid Mobile Apps
10 Useful Frameworks to Build Hybrid Mobile Apps75waytechnologies
 
Introduction to Web Frameworks
Introduction to Web FrameworksIntroduction to Web Frameworks
Introduction to Web FrameworksSarika Jadhav
 
Kendo UI workshop introduction - PUG Baltic Annual Conference 2017
Kendo UI workshop introduction - PUG Baltic Annual Conference 2017Kendo UI workshop introduction - PUG Baltic Annual Conference 2017
Kendo UI workshop introduction - PUG Baltic Annual Conference 2017Alen Leit
 
IRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of thingsIRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of thingsIRJET Journal
 
Evolving Mobile Architectures
Evolving Mobile ArchitecturesEvolving Mobile Architectures
Evolving Mobile Architecturessgleadow
 
MyMobileWeb Certification Part I
MyMobileWeb Certification Part IMyMobileWeb Certification Part I
MyMobileWeb Certification Part Icrdlc
 
Web technologies practical guide
Web technologies practical guideWeb technologies practical guide
Web technologies practical guidesamir azazy
 
SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...
SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...
SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...Sencha
 
Sencha Tooling - Senchacon Conference
Sencha Tooling  - Senchacon ConferenceSencha Tooling  - Senchacon Conference
Sencha Tooling - Senchacon ConferenceSandeep Adwankar
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web appsAkshay Sharma
 
"Native" Apps with APEX and PhoneGap
"Native" Apps with APEX and PhoneGap"Native" Apps with APEX and PhoneGap
"Native" Apps with APEX and PhoneGapChristian Rokitta
 
TOOLS FOR PROGRESSIVE WEB APPS.pdf
TOOLS FOR PROGRESSIVE WEB APPS.pdfTOOLS FOR PROGRESSIVE WEB APPS.pdf
TOOLS FOR PROGRESSIVE WEB APPS.pdfCerebrum Infotech
 
Important Backend Frameworks To Remember For Businesses In 2023
Important Backend Frameworks To Remember For Businesses In 2023Important Backend Frameworks To Remember For Businesses In 2023
Important Backend Frameworks To Remember For Businesses In 2023Netizens Technologies
 

Similar to #Devcamp17: Développement d’une Progressive Web Application (PWA) avec le stack Ionic-Angular-Capacitor (20)

Talk for DevFest 2021 - GDG Bénin
Talk for DevFest 2021 - GDG BéninTalk for DevFest 2021 - GDG Bénin
Talk for DevFest 2021 - GDG Bénin
 
Andrew Resume
Andrew ResumeAndrew Resume
Andrew Resume
 
Progressive Web Apps –The Future of Apps
Progressive Web Apps –The Future of Apps   Progressive Web Apps –The Future of Apps
Progressive Web Apps –The Future of Apps
 
Preparation Guide on Full Stack Developer.pdf
Preparation Guide on Full Stack Developer.pdfPreparation Guide on Full Stack Developer.pdf
Preparation Guide on Full Stack Developer.pdf
 
Native - Hybrid - Web Mobile Architectures
Native - Hybrid - Web Mobile ArchitecturesNative - Hybrid - Web Mobile Architectures
Native - Hybrid - Web Mobile Architectures
 
Around mobile and web development At Latent.pptx
Around mobile and web development At Latent.pptxAround mobile and web development At Latent.pptx
Around mobile and web development At Latent.pptx
 
10 Useful Frameworks to Build Hybrid Mobile Apps
10 Useful Frameworks to Build Hybrid Mobile Apps10 Useful Frameworks to Build Hybrid Mobile Apps
10 Useful Frameworks to Build Hybrid Mobile Apps
 
Introduction to Web Frameworks
Introduction to Web FrameworksIntroduction to Web Frameworks
Introduction to Web Frameworks
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
Kendo UI workshop introduction - PUG Baltic Annual Conference 2017
Kendo UI workshop introduction - PUG Baltic Annual Conference 2017Kendo UI workshop introduction - PUG Baltic Annual Conference 2017
Kendo UI workshop introduction - PUG Baltic Annual Conference 2017
 
IRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of thingsIRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of things
 
Evolving Mobile Architectures
Evolving Mobile ArchitecturesEvolving Mobile Architectures
Evolving Mobile Architectures
 
MyMobileWeb Certification Part I
MyMobileWeb Certification Part IMyMobileWeb Certification Part I
MyMobileWeb Certification Part I
 
Web technologies practical guide
Web technologies practical guideWeb technologies practical guide
Web technologies practical guide
 
SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...
SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...
SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...
 
Sencha Tooling - Senchacon Conference
Sencha Tooling  - Senchacon ConferenceSencha Tooling  - Senchacon Conference
Sencha Tooling - Senchacon Conference
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
"Native" Apps with APEX and PhoneGap
"Native" Apps with APEX and PhoneGap"Native" Apps with APEX and PhoneGap
"Native" Apps with APEX and PhoneGap
 
TOOLS FOR PROGRESSIVE WEB APPS.pdf
TOOLS FOR PROGRESSIVE WEB APPS.pdfTOOLS FOR PROGRESSIVE WEB APPS.pdf
TOOLS FOR PROGRESSIVE WEB APPS.pdf
 
Important Backend Frameworks To Remember For Businesses In 2023
Important Backend Frameworks To Remember For Businesses In 2023Important Backend Frameworks To Remember For Businesses In 2023
Important Backend Frameworks To Remember For Businesses In 2023
 

Recently uploaded

Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...fonyou31
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajanpragatimahajan3
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 

Recently uploaded (20)

Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 

#Devcamp17: Développement d’une Progressive Web Application (PWA) avec le stack Ionic-Angular-Capacitor

  • 1.
  • 2. Qui suis-je ? Ezéchiel Amen AGBLA ✅ Ingénieur en Électronique et Systèmes Embarqués ✅ Directeur des Opérations et Développeur Fullstack JavaScript à Vyconsulting ✅ Enseignant à l’Université Privée de Fès (Maroc) twitter.com/ezchilamen github.com/amilamen
  • 3.
  • 4. Qu’est-ce qu’une PWA ? Une Progressive Web Application (PWA) est un site web qui utilise les capacités modernes des mobiles (Notifications push, GPS, Appareil photo…) pour offrir aux utilisateurs une expérience semblable à celle d’une application mobile native.
  • 5. Pourquoi utiliser une PWA ? ✅ Une seule application d’où la notion de progressive ✅ La sécurité ✅ La rapidité ✅ L’engagement ✅ Le référencement ✅ Le fonctionnement hors-ligne ✅ L’installation d’un raccourci
  • 6. Quels sont les principes de développement d’une PWA ? ✅ Le manifeste ✅ Le HTTPS ✅ La mise en place d’un Service Workers ✅ L’engagement
  • 7.
  • 9. Framework Ionic UI Components for native mobile apps, PWAs, and even Desktop Pre-built Gestures and Animations Platform Continuity for iOS and Material Design Full access to all Native APIs and Plugins A large, vibrant world-wide community
  • 11. Gestures & Animations Swiping gestures between views Sliding items for reveals Carousel slides for App intro
  • 12. Platform Continuity A N D R O I D I O S Platform-aware components Look-and-feel at home Up to date with latest UI design
  • 13. Native Access Community driven plugin ecosystem @ionic-native to integrate with Ionic Can integrate with custom needs and APIs
  • 14. Framework/components are open source (MIT) Native layers (Cordova/Capacitor) also open source Open Web Standards - available to everyone Open Source everything
  • 15. Integration with Popular Frameworks Angular and Vue currently, more to come Use framework specific tooling to better integrate with ecosystem Ionic handles the UI/UX, frameworks handle the logic layer
  • 17. Framework Angular Angular is an application design framework and development platform for creating efficient and sophisticated single-page apps.
  • 18. Main Concepts ✅ Components ✅ Templates ✅ Directives ✅ Dependency Injection
  • 19. Built-in features ✅ Routing & Navigation ✅ Forms ✅ HTTP Client ✅ Internationalization (i18n) ✅ Animations ✅ Schematics ✅ Service Workers & PWA
  • 20. What is Capacitor ? The new Native Bridge for Web Apps
  • 21. What is Capacitor ? Cross-platform runtime for iOS, Android, Electron and Web Web-focused APIs that stay close to the Standards Modern Native tooling for easy native project maintenance Inspiration from Cordova, React Native, and Turbolinks
  • 22. Add to any project $ npm install @capacitor/core @capacitor/cli --save $ npx cap init $ npx cap add {ios, android, web, electron} $ npx cap open
  • 23. import { Plugins, CameraResultType } from '@capacitor/core'; export class MyClass { const { Camera } = Plugins; async takePicture() { const image = await Camera.getPhoto({ quality: 90, allowEditing: true, resultType: CameraResultType.Uri }); var imageUrl = image.webPath; imageElement.src = imageUrl; } }
  • 24. import { Plugins, FilesystemDirectory, FilesystemEncoding } from '@capacitor/core'; export class MyClass { const { Filesystem } = Plugins; async fileRead() { let contents = await Filesystem.readFile({ path: 'secrets/text.txt', directory: FilesystemDirectory.Documents, encoding: FilesystemEncoding.UTF8 }); console.log(contents); } }
  • 25. 👩🏽💻 ☕️🚀 Instant Coding 🚀☕️🏽🏽💻
  • 26. M E R C I