Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Build a PWA with Azure ML built-in
Search
Michelle Sandford
January 15, 2022
Programming
180
0
Share
Build a PWA with Azure ML built-in
This is just the code editing of the template PWA scaffolded with VUE
Michelle Sandford
January 15, 2022
More Decks by Michelle Sandford
See All by Michelle Sandford
Keynote for Programmable.Tech 2024
msandfor
0
71
Amplifying Your Tech Career: Showcasing Your Work and Building Your Brand
msandfor
0
62
Build a Static Web App (PWA) with Custom Vision
msandfor
1
280
LiveOps_Best_Practices.pdf
msandfor
0
93
Techorama - Rise of the Tech Influencer
msandfor
0
180
Has your puppy joined the dark side?
msandfor
0
260
¿Tu cachorro se ha unido al lado oscuro?
msandfor
0
120
Well Connected
msandfor
0
97
Show Your Work - Using Data Science to Peek inside the Black Box
msandfor
0
96
Other Decks in Programming
See All in Programming
さぁV100、メモリをお食べ・・・
nilpe
0
110
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
3
1.8k
関係性から理解する"同一性"の型用語たち
pvcresin
2
620
ふつうのFeature Flag実践入門
irof
7
3.3k
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
190
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
180
net-httpのHTTP/2対応について
naruse
0
360
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
2
390
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
980
次世代リンターで探る、tsgo 時代における型認識カスタムルールの現実解
ytakahashii
3
1.3k
ビジネスモデルから紐解く、AI+型駆動開発
hirokiomote
2
4.4k
tsserverとは何だったのか、これからどうなるのか
nowaki28
1
420
Featured
See All Featured
It's Worth the Effort
3n
188
29k
Building the Perfect Custom Keyboard
takai
2
780
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
710
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.3k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
180
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
330
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
590
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
240
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
130
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
160
Typedesign – Prime Four
hannesfritz
42
3.1k
Transcript
Has Your Puppy Joined The Dark Side?
Side-by-side deck – How to Build a PWA with Azure
ML Built-in
Scaffold the App
Has Your Puppy Joined the Dark Side?
App.vue
Display an image and a button to switch it
Create a Placeholder for the data <script> export default {
name: "DetectImage", props: { msg: String }, data() { return { image: 0, numImages: 21 }; }, </script>
Return the index of an image <script> export default {
name: "DetectImage", props: { msg: String }, data() { return { image: 0, numImages: 21 }; }, computed: { getImgIndex() { return this.image.toString(); }, disable() { if (this.image == this.numImages) { return true; } else return false; } }, </script>
Capture user interaction computed: { getImgIndex() { return this.image.toString(); },
disable() { if (this.image == this.numImages) { return true; } else return false; } }, methods: { next() { this.image++; this.predictions = []; setTimeout(this.predict, 500); } } </script>
Bling bling baby <style scoped> h3 { margin: 40px 0
0; } .image { min-height: 500px; max-height: 500px; max-width: 100%; } .button { width: 200px; height: 50px; border-radius: 5px; background-color: blueviolet; color: white; font-size: 20pt; margin: 10px; } .button:disabled, .button[disabled] { border: 1px solid #999999; background-color: #cccccc; color: #666666; } </style>
json "dependencies": { "core-js": "^3.6.5", "register-service-worker": "^1.7.1", "customvision-tfjs": "^1.0.1", "vue":
"^3.0.0" }, "devDependencies": { "@vue/cli-plugin-babel": "~4.5.0", "@vue/cli-plugin-eslint": "~4.5.0", "@vue/cli-plugin-pwa": "~4.5.0", "@vue/cli-service": "~4.5.0", "@vue/compiler-sfc": "^3.0.0", "@vue/eslint-config-standard": "^5.1.2", "babel-eslint": "^10.1.0", "eslint": "^6.7.2", "eslint-plugin-import": "^2.20.2", "eslint-plugin-node": "^11.1.0", "eslint-plugin-promise": "^4.2.1", "eslint-plugin-standard": "^4.0.0", "raw-loader": "^4.0.0", "webpack-cli": "^3.3.10" "eslint-plugin-vue": "^7.0.0" },
customvision-tfjs
Web.config.js
Data elements
Async mounted
Async predict
Async predict
Web.config
Has Your Puppy Joined The Dark Side?