SlideShare a Scribd company logo
M5BP
architecting a futuristic MODX
Manager with HTML5
MODX 2.X
• Desktop First (inline styling, non–responsive)
• HTML Last (ExtJS owns the DOM)
• Ableism (mouse reliance, non-semantic markup)
• Aggressively Enhanced (white screen of death, 🚫 HTML)
😶
• Desktop First (inline styling, non–responsive)
• HTML Last (ExtJS owns the DOM)
• Ableism (mouse reliance)
• Aggressively Enhanced (white screen of death, 🚫 HTML)
• Really Awesome (creative freedom, community)
😁
MODX 2.X
• By tracing our technology stack back to

web standards we allow creative freedom in how
it is progressively enhanced thereafter
• Extra Developers can use the tools of their choice

(a less opinionated API)
• Themes configurable via CSS Variables makes
theming more accessible
🎨
Creative Freedom
• mouse enabled
• sighted
• abled
• desktop
• sufficient data
🏃
Current Audience

restricting access
2.X
• touch
• non-sighted
• disabled
• mobile
• cellular
🌐
Wider Audience

let everyone in the building
2.X 4.X
• everyone
Design Patterns
• Mobile first (viewport, touch, bandwidth, battery)
• HTML–first (semantic, accessible, future–forward)
• Inclusively Designed (assistive tech, a11y preferences)
• Progressively Enhanced (interpretative, configurable)
• Searchable (filterable interface, search mode)
🙏
Primary Goals
• Creative Freedom (empowering developers)
• Count the “Clicks” (monetize user experience)
• Everything in Reach (search everything a tap away)
• WCAG 2.0 Level AA (accessibility compliance level)
• VoiceOver Support (screen reader support, hidden text)
🙏
mobile first

sticky bamboo
• A single tall scrollable column
• Collapsable sections

(<details>)
• Sticky bar with jump to links

Anywhere is within reach
📱
HTML–first
• Initially working within the
limitations of HTML makes for a
more performant design
• Design challenges are solved
semantically before visually styled
or asynchronously enhanced

<form action>
• Low ARIA usage

ARIA is Salt
👆
• HTML is interpretive
• JavaScript is declarative
• A semantic HTML document improves
with time
• An non-semantic declarative document
decays with time
👆
HTML–first
“Not including accessibility 

from the beginning is implicit
consent to incurring

technical debt.”
—Karl Groves

tenon.io
📉
Technical Debt vs Profit
Searchable
• MODX Revolution introduced
the beloved uberbar

🎭
• Imagine taking the uberbar to
the interface level

🤔
🔎
• Shortcuts to fully expand /
collapse <details>

⚡
• CTRL+OPTION+SHIFT+⬆
• CTRL+OPTION+SHIFT+⬇
🔎
Searchable
• Compatible with native browser
search features

👏
• URL friendly

/#uber?q=kansas

🔎
Searchable
Search Mode

Entire Interface Opens
🔎
Desktop Uberbar
🔎
• Entire nav expands on :focus
• Can scroll passed it
• Dynamically filtered
Focused Uberbar

Navigation Opens
🔎
“Try to refrain from allowing ableism into
your designs.
Spend the same amount of time you
spend on visual styles on

accessibility. #A11Y”
—@mrktps

markup.tips
⏰😎
Inclusively Designed
Not a single critical features relies entirely on:



• vision

• style

• mouse

• script
🤘
Inclusively Designed
• Enhancements are withheld until
they’ve been architected
accessibly
• In other words, critical features
exclusive to mouse users are not
added until they are compatible
with assistive technology
• This often leads to discoveries
otherwise left unfound
🤘
HTML5 ContextMenus
HTML5 ContextMenus
Future Forward

ready for a new precedent
• Writing future forward code isn’t just about
supporting future browsers
• It is also about supporting more inclusive
future societies such as Germany
• Companies with more than 20 employees are
supposed to fill at least 5 percent of their
positions with people with disabilities
🔮
Keyboard Friendly
• Uses an accessible design pattern
discovered as part of a manage
users concept
• no right click
• no modals
⌨
Battery Friendly
• Follow the MAB Responding to Battery

Levels DRAFT
• Components switch between glutenous,
modest, and fasting CPU consumption modes
• A more efficient interface is a more

accessible interface

(as it can be used longer)
🔋
Audible Profile
(what’s the interface sound like?)
Not only is the interface tested cross–browser
for visual styles, an audible profile ensures the
interface is semantic and usable for

all users.
Like salt, ARIA is generally avoided and used
in measured doses as a final seasoning if
needed.
📣
Screen Reader Friendly
Visually Hidden text audibly conveys
what is otherwise conveyed visually to
sighted users
😎
HTML–first
(look MOM, no AIRA)
Text is hidden with CSS so that when the
CSS is removed, and the correlation
between styled components is lost,

the text appears
😎
VoiceOver Support
🤘
VoiceOver Support

(jump links accessible to keyboard & screen reader)
🤘
High Contrast Modes
• Accessible CSS supports
white-on-black and black-
on-white contrast modes
• Configurable by Operating
or MODX System Settings

(not a separate manager theme)
👀
High Contrast Modes
👀
Progressively Enhanced
• Starting HTML–first means starting
interpretative first
• System Fonts, Emoji Icons, & modern browser
features are weightless
• Make use of everything we can already on the
device before spending on web fonts, icon
sets, and scripts
🐣
• as enhancements are made
make them configurable so
they can be opted out of

or altered
• For example, icon sets can be
opted out of and the interface
falls back to emoji
• heavy web fonts are opt in
🐣
Progressively Enhanced
Progressively Enhanced
Iconography
120kB0kB
Emoji Art
is already there
• Emoji art weighs 0kB and is
inherently accessible

📦
• Emoji is the fasted 

growing language

📈
• Icons improve legibility

👓
👻
Emoji–first Iconography
• Is interpretive

🎭
• Will look different from

system to system

😭
• Can be progressively enhanced

(SVG, fontawesome, whatever)

🚀
👾
Emoji–first Iconography
• Assumptions of ability are not made based
detected peripherals or assistive technology
• Not all screen reader users are legally blind
or even visually impaired
• i18n is easy to find
👥
Inclusively Designed
CSS Variables
🎨
• Append a stylesheet or
<style> which sets CSS
Variables to

customize values
• WYSIWYG tools could
allow end users to
customize the styles
without writing

any code 🤔
CSS Variables
🎨
CSS Variables
🎨
CSS Variables
accessible theming
🎨
Accessible Theming
• No longer is an ExtJS, Sass, Grunt skillset
needed to paint the Manager
• No knowledge of CSS selectors needed
• As accessible as setting a few CSS variables
• *Variables can be adjusted WYSIWYG at the user
level in Accessibly Preferences
(*WIP)
🎨
Count the “Clicks”
• Each feature has a cost spent in measurable
user interactions such as clicks and key presses
• Persistent uber and jump bars keep search
everything always within reach
🖱
• Important features accessible via VoiceOver rotor
⌨
Count the “Clicks”
Weigh In
• Current baseline weight is 20kB including the
example HTML document weight
• 5kB CSS
• 6kB JavaScript
• Interpretive Code is already on the device
🏋
Spending Bytes
• Additional declarative enhancements such as
webfonts can be configured to load
• Allow users to opt-in to expensive features

(eg: default to emoji icons option for fontawesome)
• save-data when asked to
💰
Freedom of the DOM
• No library or framework owns the DOM
🤘
Actively Developed
github.com/jpdevries/m5bp

m5bp.herokuapp.com
⚒
👻
Emoji–first Iconography

VoiceOver friendly
Cross Browser
Cross Browser
Cross Browser
Cross Browser

More Related Content

PPTX
Java CMS 2015
PPTX
Greenfield Java 2013
PPTX
Introduction to HTML5 & CSS3
PDF
WordPress - The Good, Bad, and Ugly
PDF
DownTheRabbitHole.js – How to Stay Sane in an Insane Ecosystem
PPTX
Week01 jan19 introductionto_php
PPTX
Drupal7 an introduction by ayushiinfotech
PDF
How to start developing apps for Firefox OS
Java CMS 2015
Greenfield Java 2013
Introduction to HTML5 & CSS3
WordPress - The Good, Bad, and Ugly
DownTheRabbitHole.js – How to Stay Sane in an Insane Ecosystem
Week01 jan19 introductionto_php
Drupal7 an introduction by ayushiinfotech
How to start developing apps for Firefox OS

What's hot (7)

PPTX
Web design v roku 2013
PPSX
Internet Concept
PPTX
Ch 1: Getting Started
PDF
WordPress Theme Reviewers Team
ZIP
Open-Source web apps for libraries
PPTX
Advanced Wordpress
PDF
Psd 2 Drupal
Web design v roku 2013
Internet Concept
Ch 1: Getting Started
WordPress Theme Reviewers Team
Open-Source web apps for libraries
Advanced Wordpress
Psd 2 Drupal
Ad

Viewers also liked (6)

PDF
All Users Are Disabled
PDF
MODX Next
PDF
Responsibly Architecting for the World–Wide Web
PDF
Fjord Trends 2017
PDF
Hype vs. Reality: The AI Explainer
PDF
Study: The Future of VR, AR and Self-Driving Cars
All Users Are Disabled
MODX Next
Responsibly Architecting for the World–Wide Web
Fjord Trends 2017
Hype vs. Reality: The AI Explainer
Study: The Future of VR, AR and Self-Driving Cars
Ad

Similar to Architecting a Futuristic MODX Manager with HTML5 (20)

PDF
Developing an Accessible Web
PDF
Modern web development and accessibility (Christina Papadimitriou, Nadia Mark...
PPTX
How you can start building accessible websites today (... and why!)
PDF
Accessibility - A feature you can build
PDF
Adaptive Web Design [WebVisions Portland 2012]
PPTX
A Primer on Web Accessibility for Teams
PPT
Html5 Whats around the bend
PDF
jQuery: Accessibility, Mobile und Responsive
PPTX
Web Accessibility in Drupal
PDF
Html5 aria-css-ibm-csun-2016
PDF
Web Accessibility - A feature you can build
PDF
Is the mobile web enabled or disabled by design?
PDF
Adaptive Web Design Workshop [inspire 2011]
PPTX
Web accessibility strategies for the new decade
PDF
Tech Headline - Using WAI-ARIA & HTML5: Techniques to solve accessibility pro...
PPT
Designing for Everybody Workshop
PDF
What book and journal publishers need to know to get accessibility right
PPTX
HTML5 introduction for beginners
PPTX
Workflow Essentials for Web Development
PPTX
Web Accessibility
Developing an Accessible Web
Modern web development and accessibility (Christina Papadimitriou, Nadia Mark...
How you can start building accessible websites today (... and why!)
Accessibility - A feature you can build
Adaptive Web Design [WebVisions Portland 2012]
A Primer on Web Accessibility for Teams
Html5 Whats around the bend
jQuery: Accessibility, Mobile und Responsive
Web Accessibility in Drupal
Html5 aria-css-ibm-csun-2016
Web Accessibility - A feature you can build
Is the mobile web enabled or disabled by design?
Adaptive Web Design Workshop [inspire 2011]
Web accessibility strategies for the new decade
Tech Headline - Using WAI-ARIA & HTML5: Techniques to solve accessibility pro...
Designing for Everybody Workshop
What book and journal publishers need to know to get accessibility right
HTML5 introduction for beginners
Workflow Essentials for Web Development
Web Accessibility

Recently uploaded (20)

PPTX
6- Architecture design complete (1).pptx
PPT
Package Design Design Kit 20100009 PWM IC by Bee Technologies
PPTX
HPE Aruba-master-icon-library_052722.pptx
PDF
Phone away, tabs closed: No multitasking
PPTX
12. Community Pharmacy and How to organize it
PPTX
mahatma gandhi bus terminal in india Case Study.pptx
PDF
Facade & Landscape Lighting Techniques and Trends.pptx.pdf
PPT
pump pump is a mechanism that is used to transfer a liquid from one place to ...
PDF
Integrated-2D-and-3D-Animation-Bridging-Dimensions-for-Impactful-Storytelling...
PDF
Design Thinking - Module 1 - Introduction To Design Thinking - Dr. Rohan Dasg...
PPTX
BSCS lesson 3.pptxnbbjbb mnbkjbkbbkbbkjb
PPTX
Fundamental Principles of Visual Graphic Design.pptx
PPTX
Complete Guide to Microsoft PowerPoint 2019 – Features, Tools, and Tips"
PPTX
Wisp Textiles: Where Comfort Meets Everyday Style
PDF
Benefits_of_Cast_Aluminium_Doors_Presentation.pdf
PPTX
Special finishes, classification and types, explanation
PDF
Key Trends in Website Development 2025 | B3AITS - Bow & 3 Arrows IT Solutions
PDF
Urban Design Final Project-Context
PPT
Machine printing techniques and plangi dyeing
PDF
UNIT 1 Introduction fnfbbfhfhfbdhdbdto Java.pptx.pdf
6- Architecture design complete (1).pptx
Package Design Design Kit 20100009 PWM IC by Bee Technologies
HPE Aruba-master-icon-library_052722.pptx
Phone away, tabs closed: No multitasking
12. Community Pharmacy and How to organize it
mahatma gandhi bus terminal in india Case Study.pptx
Facade & Landscape Lighting Techniques and Trends.pptx.pdf
pump pump is a mechanism that is used to transfer a liquid from one place to ...
Integrated-2D-and-3D-Animation-Bridging-Dimensions-for-Impactful-Storytelling...
Design Thinking - Module 1 - Introduction To Design Thinking - Dr. Rohan Dasg...
BSCS lesson 3.pptxnbbjbb mnbkjbkbbkbbkjb
Fundamental Principles of Visual Graphic Design.pptx
Complete Guide to Microsoft PowerPoint 2019 – Features, Tools, and Tips"
Wisp Textiles: Where Comfort Meets Everyday Style
Benefits_of_Cast_Aluminium_Doors_Presentation.pdf
Special finishes, classification and types, explanation
Key Trends in Website Development 2025 | B3AITS - Bow & 3 Arrows IT Solutions
Urban Design Final Project-Context
Machine printing techniques and plangi dyeing
UNIT 1 Introduction fnfbbfhfhfbdhdbdto Java.pptx.pdf

Architecting a Futuristic MODX Manager with HTML5

  • 1. M5BP architecting a futuristic MODX Manager with HTML5
  • 2. MODX 2.X • Desktop First (inline styling, non–responsive) • HTML Last (ExtJS owns the DOM) • Ableism (mouse reliance, non-semantic markup) • Aggressively Enhanced (white screen of death, 🚫 HTML) 😶
  • 3. • Desktop First (inline styling, non–responsive) • HTML Last (ExtJS owns the DOM) • Ableism (mouse reliance) • Aggressively Enhanced (white screen of death, 🚫 HTML) • Really Awesome (creative freedom, community) 😁 MODX 2.X
  • 4. • By tracing our technology stack back to
 web standards we allow creative freedom in how it is progressively enhanced thereafter • Extra Developers can use the tools of their choice
 (a less opinionated API) • Themes configurable via CSS Variables makes theming more accessible 🎨 Creative Freedom
  • 5. • mouse enabled • sighted • abled • desktop • sufficient data 🏃 Current Audience
 restricting access 2.X
  • 6. • touch • non-sighted • disabled • mobile • cellular 🌐 Wider Audience
 let everyone in the building 2.X 4.X • everyone
  • 7. Design Patterns • Mobile first (viewport, touch, bandwidth, battery) • HTML–first (semantic, accessible, future–forward) • Inclusively Designed (assistive tech, a11y preferences) • Progressively Enhanced (interpretative, configurable) • Searchable (filterable interface, search mode) 🙏
  • 8. Primary Goals • Creative Freedom (empowering developers) • Count the “Clicks” (monetize user experience) • Everything in Reach (search everything a tap away) • WCAG 2.0 Level AA (accessibility compliance level) • VoiceOver Support (screen reader support, hidden text) 🙏
  • 9. mobile first
 sticky bamboo • A single tall scrollable column • Collapsable sections
 (<details>) • Sticky bar with jump to links
 Anywhere is within reach 📱
  • 10. HTML–first • Initially working within the limitations of HTML makes for a more performant design • Design challenges are solved semantically before visually styled or asynchronously enhanced
 <form action> • Low ARIA usage
 ARIA is Salt 👆
  • 11. • HTML is interpretive • JavaScript is declarative • A semantic HTML document improves with time • An non-semantic declarative document decays with time 👆 HTML–first
  • 12. “Not including accessibility 
 from the beginning is implicit consent to incurring
 technical debt.” —Karl Groves
 tenon.io 📉
  • 13. Technical Debt vs Profit
  • 14. Searchable • MODX Revolution introduced the beloved uberbar
 🎭 • Imagine taking the uberbar to the interface level
 🤔 🔎
  • 15. • Shortcuts to fully expand / collapse <details>
 ⚡ • CTRL+OPTION+SHIFT+⬆ • CTRL+OPTION+SHIFT+⬇ 🔎 Searchable
  • 16. • Compatible with native browser search features
 👏 • URL friendly
 /#uber?q=kansas
 🔎 Searchable
  • 18. Desktop Uberbar 🔎 • Entire nav expands on :focus • Can scroll passed it • Dynamically filtered
  • 20. “Try to refrain from allowing ableism into your designs. Spend the same amount of time you spend on visual styles on
 accessibility. #A11Y” —@mrktps
 markup.tips ⏰😎
  • 21. Inclusively Designed Not a single critical features relies entirely on:
 
 • vision
 • style
 • mouse
 • script 🤘
  • 22. Inclusively Designed • Enhancements are withheld until they’ve been architected accessibly • In other words, critical features exclusive to mouse users are not added until they are compatible with assistive technology • This often leads to discoveries otherwise left unfound 🤘
  • 25. Future Forward
 ready for a new precedent • Writing future forward code isn’t just about supporting future browsers • It is also about supporting more inclusive future societies such as Germany • Companies with more than 20 employees are supposed to fill at least 5 percent of their positions with people with disabilities 🔮
  • 26. Keyboard Friendly • Uses an accessible design pattern discovered as part of a manage users concept • no right click • no modals ⌨
  • 27. Battery Friendly • Follow the MAB Responding to Battery
 Levels DRAFT • Components switch between glutenous, modest, and fasting CPU consumption modes • A more efficient interface is a more
 accessible interface
 (as it can be used longer) 🔋
  • 28. Audible Profile (what’s the interface sound like?) Not only is the interface tested cross–browser for visual styles, an audible profile ensures the interface is semantic and usable for
 all users. Like salt, ARIA is generally avoided and used in measured doses as a final seasoning if needed. 📣
  • 29. Screen Reader Friendly Visually Hidden text audibly conveys what is otherwise conveyed visually to sighted users 😎
  • 30. HTML–first (look MOM, no AIRA) Text is hidden with CSS so that when the CSS is removed, and the correlation between styled components is lost,
 the text appears 😎
  • 32. VoiceOver Support
 (jump links accessible to keyboard & screen reader) 🤘
  • 33. High Contrast Modes • Accessible CSS supports white-on-black and black- on-white contrast modes • Configurable by Operating or MODX System Settings
 (not a separate manager theme) 👀
  • 35. Progressively Enhanced • Starting HTML–first means starting interpretative first • System Fonts, Emoji Icons, & modern browser features are weightless • Make use of everything we can already on the device before spending on web fonts, icon sets, and scripts 🐣
  • 36. • as enhancements are made make them configurable so they can be opted out of
 or altered • For example, icon sets can be opted out of and the interface falls back to emoji • heavy web fonts are opt in 🐣 Progressively Enhanced
  • 39. • Emoji art weighs 0kB and is inherently accessible
 📦 • Emoji is the fasted 
 growing language
 📈 • Icons improve legibility
 👓 👻 Emoji–first Iconography
  • 40. • Is interpretive
 🎭 • Will look different from
 system to system
 😭 • Can be progressively enhanced
 (SVG, fontawesome, whatever)
 🚀 👾 Emoji–first Iconography
  • 41. • Assumptions of ability are not made based detected peripherals or assistive technology • Not all screen reader users are legally blind or even visually impaired • i18n is easy to find 👥 Inclusively Designed
  • 42. CSS Variables 🎨 • Append a stylesheet or <style> which sets CSS Variables to
 customize values • WYSIWYG tools could allow end users to customize the styles without writing
 any code 🤔
  • 46. Accessible Theming • No longer is an ExtJS, Sass, Grunt skillset needed to paint the Manager • No knowledge of CSS selectors needed • As accessible as setting a few CSS variables • *Variables can be adjusted WYSIWYG at the user level in Accessibly Preferences (*WIP) 🎨
  • 47. Count the “Clicks” • Each feature has a cost spent in measurable user interactions such as clicks and key presses • Persistent uber and jump bars keep search everything always within reach 🖱
  • 48. • Important features accessible via VoiceOver rotor ⌨ Count the “Clicks”
  • 49. Weigh In • Current baseline weight is 20kB including the example HTML document weight • 5kB CSS • 6kB JavaScript • Interpretive Code is already on the device 🏋
  • 50. Spending Bytes • Additional declarative enhancements such as webfonts can be configured to load • Allow users to opt-in to expensive features
 (eg: default to emoji icons option for fontawesome) • save-data when asked to 💰
  • 51. Freedom of the DOM • No library or framework owns the DOM 🤘