SlideShare a Scribd company logo
Looking at the Vue
A retrospective
About me
Robert MacLean
Veteran full stack software developer
DevConf & Developer User Group Director
Day job at Equal Experts
31st March 2020
You + 800 of your best friends
5 tracks, over 40 talks
www.DevConf.co.za
What are we covering?
It’s a project retrospective
Cover some of what we did and how we did it
Shared some cool things we did
Focus on front end
Useful advice (at least 5 of them)
Looking at the Vue
Goal of the project
Domain: Large financial services company
Problem: Signup is hard. Paperwork. Legal
requirements. Manual Steps
Solution: Build a MVP that takes a customer through
signup quickly
Flexibility
Build for reuse (i.e. favour components/isolation)
What we used
Vue (duh)
TypeScript
MobX
CSS Framework – Grids; per component CSS 🤕
VSCode
VSCode trick
Focus on UI + Sharing
Code
UI Idea
Content
Next/back button
Brand + Popup messages
Shared Palette
Component
Component
Router View
Looking at the Vue
Looking at the Vue
Routing
Looking at the Vue
Looking at the Vue
Looking at the Vue
Looking at the Vue
Looking at the Vue
Pro/Con
It is awesome to not have to worry about coding
next buttons
Would work great in other aspects too
Maybe over engineered up front… or not enough
Limitations in using an array
Managing State
Looking at the Vue
Looking at the Vue
Looking at the Vue
Looking at the Vue
Looking at the Vue
Pro/Con
Loved working with mobx and decorators
Might feel a bit too much like magic
Building Components
Label
SuffixPlaceholderPrefix
ANIMATIONS FOR EVERYTHING!!!!
Looking at the Vue
Looking at the Vue
Testing
Demo
Testcafe
Testcafe
Testcafe
Testcafe
TestCafe Studio
Build VUE Plugins!
https://github.com/rmaclean-ee/vue-cli-plugin-
testcafe
Bits and pieces
lighthouse
Nomatim from OpenStreetMaps
Nomatim from OpenStreetMaps
Thanks! Any questions?
Want more demos?

More Related Content

PDF
Design system for new O2 CRM and web apps
PDF
Embedded System and C Programming is Extremely Useful
PDF
What are the Benefits of Learning HTML code?
PPTX
Sharepoint introduction
DOCX
60 Second Pitch Attempt 1
PPTX
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
PPTX
MassChallenge Time Machine for .NET
PDF
When e-commerce meets Symfony
Design system for new O2 CRM and web apps
Embedded System and C Programming is Extremely Useful
What are the Benefits of Learning HTML code?
Sharepoint introduction
60 Second Pitch Attempt 1
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
MassChallenge Time Machine for .NET
When e-commerce meets Symfony

Similar to Looking at the Vue (20)

PPTX
Roadmap to Become a Pro in MERN Stack Development
PDF
Designing and developing products for multiple platforms
PPTX
2008 - TechDays PT: Modeling and Composition for Software today and tomorrow
PDF
How To be a Backend developer
PPT
How to manage a big scale HTML/CSS project
ODP
Making the New Notes - Community, Cooperation, Concepts
PPT
Session slides
PPT
Session slides
PPT
Session slides
ODP
Kamon Ayeva Antipatterns, Patterns, And Rules Of Thumb For Successful Plone...
PPT
AD303: Extreme Makeover – IBM® Lotus® Domino® Application Edition
PPT
Portal Deployment Best Practices | IBM Portal Excellence Conference 2009
PPTX
When to Code / Config / Config + Code in Salesforce - Nikunj Doshi
PPT
Open by Design: How IBM Partnered with the User Community in the Redesign of...
PPT
How To Express Your Creative Self With Windows Presentation Foundation And Si...
PDF
AD - Developer communication and Technology
PPTX
Dreaweaver cs5
PPTX
Global Conductor Explained
PPTX
Msdn Mini Digital Marketing Plan
PPT
Designing Powerful Web Applications Using AJAX and Other RIAs
Roadmap to Become a Pro in MERN Stack Development
Designing and developing products for multiple platforms
2008 - TechDays PT: Modeling and Composition for Software today and tomorrow
How To be a Backend developer
How to manage a big scale HTML/CSS project
Making the New Notes - Community, Cooperation, Concepts
Session slides
Session slides
Session slides
Kamon Ayeva Antipatterns, Patterns, And Rules Of Thumb For Successful Plone...
AD303: Extreme Makeover – IBM® Lotus® Domino® Application Edition
Portal Deployment Best Practices | IBM Portal Excellence Conference 2009
When to Code / Config / Config + Code in Salesforce - Nikunj Doshi
Open by Design: How IBM Partnered with the User Community in the Redesign of...
How To Express Your Creative Self With Windows Presentation Foundation And Si...
AD - Developer communication and Technology
Dreaweaver cs5
Global Conductor Explained
Msdn Mini Digital Marketing Plan
Designing Powerful Web Applications Using AJAX and Other RIAs
Ad

More from Robert MacLean (20)

PPTX
Deno ...................................
PPTX
14 things you need to be a successful software developer (v3)
PPTX
OWASP TOP 10
PPTX
Building a µservice with Kotlin, Micronaut & GCP
PPTX
Kotlin 101
PPTX
Features of Kotlin I find exciting
PPTX
JavaScript Gotchas
PPTX
DevConf Survival Guide
PPTX
The state of testing @ Microsoft
PPTX
Visual Studio ❤ JavaScript
PPTX
What is new in C# 6?
PPTX
Putting the DOT in .NET - Dev/Ops/Test
PPTX
A Developer Day 2014 - Durban
PPTX
Agile lessons learned in the Microsoft ALM Rangers
PPTX
Hour of code - Train the trainer
PPTX
Building services for apps on a shoestring budget
PPTX
3 things your app API is doing WRONG
PPTX
PPTX
LightSwitch
Deno ...................................
14 things you need to be a successful software developer (v3)
OWASP TOP 10
Building a µservice with Kotlin, Micronaut & GCP
Kotlin 101
Features of Kotlin I find exciting
JavaScript Gotchas
DevConf Survival Guide
The state of testing @ Microsoft
Visual Studio ❤ JavaScript
What is new in C# 6?
Putting the DOT in .NET - Dev/Ops/Test
A Developer Day 2014 - Durban
Agile lessons learned in the Microsoft ALM Rangers
Hour of code - Train the trainer
Building services for apps on a shoestring budget
3 things your app API is doing WRONG
LightSwitch
Ad

Recently uploaded (20)

PDF
Electronic commerce courselecture one. Pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Big Data Technologies - Introduction.pptx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
KodekX | Application Modernization Development
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Unlocking AI with Model Context Protocol (MCP)
Electronic commerce courselecture one. Pdf
Encapsulation_ Review paper, used for researhc scholars
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
20250228 LYD VKU AI Blended-Learning.pptx
NewMind AI Weekly Chronicles - August'25 Week I
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
“AI and Expert System Decision Support & Business Intelligence Systems”
Dropbox Q2 2025 Financial Results & Investor Presentation
Network Security Unit 5.pdf for BCA BBA.
Advanced methodologies resolving dimensionality complications for autism neur...
Big Data Technologies - Introduction.pptx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
KodekX | Application Modernization Development
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Chapter 3 Spatial Domain Image Processing.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Unlocking AI with Model Context Protocol (MCP)

Looking at the Vue

Editor's Notes

  • #5: Convention over configuration for routing Using OSM Nominatim Integrating Google Lighthouse Using TestCafe My favourite piece of code Use of decorators to kill boiler plate code
  • #7: , so: Use selfie + proof of presence to tick legal requirements Mobile first web experience that embraces what is available to mitigate typing Hide the slow backends using smart UX
  • #13: All the code for a page
  • #14: Plumbing on the palette Demo this: console.log("%c[Vue.JS]","color: rebeccapurple; font-weight: bold", "How cool is this?")
  • #17: Allowing us to just drop pages into it and have them found and added
  • #18: Build up the routes dynamically
  • #19: The configure the flow of independently
  • #26: Demo for vuex
  • #27: Same for mobx
  • #28: Decorators
  • #30: Use of decorators in the view
  • #31: Talk about loading and saving aspects of a page
  • #36: TextInput component
  • #38: npm install -g testcafe testcafe chrome demoTest.js testcafe chrome,firefox,safari demoTest.js testcafe remote demoTest.js --qr-code import { Selector } from 'testcafe'; fixture`Getting Started`.page`http://devexpress.github.io/testcafe/example`; test('My first test', async (t) => {   await t.typeText('#developer-name', 'John Smith').click('#submit-button');   await t.expect(Selector('#article-header').innerText).eql('Thank you, John Smith!'); });