SlideShare a Scribd company logo
Application Theming
the Accessible Way
Melissa Brooks –
CollegeSource, Inc.
Agenda
• About me
• The problems we’re trying to solve
• Looking for inspiration
• Our solution
About Me
• User Experience Manager at CollegeSource
• Responsible for:
• User interface design
• Product Testing
• Product documentation
• Accessibility
About CollegeSource
• Higher Education software company
• Transfer Credit, Degree Audit and Degree Planning and Scheduling
• Clients throughout the United States, Canada and Hong Kong
The Problems
• Our clients theme or re-skin our web applications to match their
school colors/branding guidelines
The Problems
• Previously done by editing CSS files
• Requires IT involvement
• Assumes knowledge of CSS
The Problems
• When clients theme our applications, they could potentially break contrast
accessibility
Looking for inspiration
• Are there apps or websites that integrate theming with accessibility?
Looking for inspiration
• Twitter
• Set one hex color for all buttons
and links on your profile page
Looking for inspiration
• Seems to be some sort of
threshold
• If you select a color that’s too
light, it doesn’t save it
• No indication why you aren’t
able to save it
Looking for inspiration
• It allows for colors that do not
pass WCAG 2.0 color contrast
guidelines
Looking for inspiration
Looking for inspiration
Looking for inspiration
• Tumblr
• Set an “Accent” and a
“Background” color
• “Accent” is the color for links on
your Tumblr profile
Looking for inspiration
• Tumblr
• Can set both accent and
background to the same color
Looking for inspiration
• Atlassian’s Confluence
• Collaborative documentation tool
• Can set custom themes for the
entire application or via individual
space
Looking for inspiration
• Atlassian’s Confluence
• Can set text and background
colors, but no warning if in
combination do not have good
contrast
Looking for inspiration
Looking for inspiration
• WebAIM Color Contrast Checker
• Set foreground and background
color
• Displays:
• Contrast Ratio
• An example
• If those colors pass WCAG AA and
AAA
• Allows you to adjust the
lightness/darkness
Our Solution
Let’s add the functionality of a contrast checker
within a theming tool
How to check the contrast?
How to use these colors?
• Color values (hex values) are saved in the database
• We wanted to load colors via CSS rather than javascript
How to use these colors?
• Use LESS to generate the CSS files
• LESS is a CSS preprocessor
• Allows you to use variables, operations, and functions
How to use these colors?
• User is setting LESS variables
• Used to generate hover, active and disabled styling
Our Theming Tool
Our Theming Tool
• The theming tool within the
uAchieve applications
• A user with administrator access
sets the colors for two themes,
“Default” and “High Contrast”
Our Theming Tool
• We tell them if the contrast ratio
between the text and
background of elements is
WCAG compliant
Our Theming Tool
• Contrast checks for:
• Two menus
• 7 buttons
• Charts & Graphs
• Two overall themes:
• Default
• High Contrast
Our Theming Tool
• Opted not to add a color picker at this time
• Colleges and Universities have set color schemes they must use
Our Theming Tool
Our Theming Tool
Our Theming Tool
• On the default theme, users can
save non-compliant colors
• On the high contrast theme,
they cannot. All color selections
must pass at least WCAG AA
Parting Thoughts
What are other ways we as designers and
developers can include accessibility tools within
our applications?
Questions? Melissa Brooks –
CollegeSource, Inc.

More Related Content

Similar to Application Theming the Accessible Way

Css
CssCss
Accuracy-Constrained Privacy-Preserving Access Control Mechanism for Relation...
Accuracy-Constrained Privacy-Preserving Access Control Mechanism for Relation...Accuracy-Constrained Privacy-Preserving Access Control Mechanism for Relation...
Accuracy-Constrained Privacy-Preserving Access Control Mechanism for Relation...
Sudhir Kumar
 
Responsive Web Design (April 18th, Los Angeles)
Responsive Web Design (April 18th, Los Angeles)Responsive Web Design (April 18th, Los Angeles)
Responsive Web Design (April 18th, Los Angeles)
Thinkful
 
SPSS Assignment Answers
SPSS Assignment AnswersSPSS Assignment Answers
SPSS Assignment Answers
Lesa Cote
 
The Costs Associated with an Open Source LMS
The Costs Associated with an Open Source LMSThe Costs Associated with an Open Source LMS
The Costs Associated with an Open Source LMS
Lambda Solutions
 
[Srijan Wednesday Webinars] Documenting Design Patterns for Cross Functional ...
[Srijan Wednesday Webinars] Documenting Design Patterns for Cross Functional ...[Srijan Wednesday Webinars] Documenting Design Patterns for Cross Functional ...
[Srijan Wednesday Webinars] Documenting Design Patterns for Cross Functional ...
Srijan Technologies
 
Building Design Systems
Building Design SystemsBuilding Design Systems
Building Design Systems
Burton Smith
 
Schema less table & dynamic schema
Schema less table & dynamic schemaSchema less table & dynamic schema
Schema less table & dynamic schema
Davide Mauri
 
What is-sass-by-lucas-castro
What is-sass-by-lucas-castroWhat is-sass-by-lucas-castro
What is-sass-by-lucas-castro
Lucas Castro
 
web- design- course - continued - Learning
web- design- course - continued - Learningweb- design- course - continued - Learning
web- design- course - continued - LearningContinued Learning
 
4. Web Technology CSS Basics-1
4. Web Technology CSS Basics-14. Web Technology CSS Basics-1
4. Web Technology CSS Basics-1
Jyoti Yadav
 
Minor Project.pptx
Minor Project.pptxMinor Project.pptx
Minor Project.pptx
DeepanshuPurwar2
 
Building Design Systems - Columbus Web Group
Building Design Systems - Columbus Web GroupBuilding Design Systems - Columbus Web Group
Building Design Systems - Columbus Web Group
Burton Smith
 
Etec 632 web design
Etec 632 web designEtec 632 web design
Etec 632 web designahalemano
 
ABD205_Building a Superpower
ABD205_Building a SuperpowerABD205_Building a Superpower
ABD205_Building a Superpower
Amazon Web Services
 
Recommender System Using AZURE ML
Recommender System Using AZURE MLRecommender System Using AZURE ML
Recommender System Using AZURE ML
Dev Raj Gautam
 
Rated Ranking Evaluator (RRE) Hands-on Relevance Testing @Chorus
Rated Ranking Evaluator (RRE) Hands-on Relevance Testing @ChorusRated Ranking Evaluator (RRE) Hands-on Relevance Testing @Chorus
Rated Ranking Evaluator (RRE) Hands-on Relevance Testing @Chorus
Sease
 
Machine Learning With ML.NET
Machine Learning With ML.NETMachine Learning With ML.NET
Machine Learning With ML.NET
Dev Raj Gautam
 

Similar to Application Theming the Accessible Way (20)

Css
CssCss
Css
 
Accuracy-Constrained Privacy-Preserving Access Control Mechanism for Relation...
Accuracy-Constrained Privacy-Preserving Access Control Mechanism for Relation...Accuracy-Constrained Privacy-Preserving Access Control Mechanism for Relation...
Accuracy-Constrained Privacy-Preserving Access Control Mechanism for Relation...
 
Responsive Web Design (April 18th, Los Angeles)
Responsive Web Design (April 18th, Los Angeles)Responsive Web Design (April 18th, Los Angeles)
Responsive Web Design (April 18th, Los Angeles)
 
SPSS Assignment Answers
SPSS Assignment AnswersSPSS Assignment Answers
SPSS Assignment Answers
 
The Costs Associated with an Open Source LMS
The Costs Associated with an Open Source LMSThe Costs Associated with an Open Source LMS
The Costs Associated with an Open Source LMS
 
[Srijan Wednesday Webinars] Documenting Design Patterns for Cross Functional ...
[Srijan Wednesday Webinars] Documenting Design Patterns for Cross Functional ...[Srijan Wednesday Webinars] Documenting Design Patterns for Cross Functional ...
[Srijan Wednesday Webinars] Documenting Design Patterns for Cross Functional ...
 
Building Design Systems
Building Design SystemsBuilding Design Systems
Building Design Systems
 
AshwiniCV- SAP Basis
AshwiniCV- SAP BasisAshwiniCV- SAP Basis
AshwiniCV- SAP Basis
 
Customizing WordPress Themes
Customizing WordPress ThemesCustomizing WordPress Themes
Customizing WordPress Themes
 
Schema less table & dynamic schema
Schema less table & dynamic schemaSchema less table & dynamic schema
Schema less table & dynamic schema
 
What is-sass-by-lucas-castro
What is-sass-by-lucas-castroWhat is-sass-by-lucas-castro
What is-sass-by-lucas-castro
 
web- design- course - continued - Learning
web- design- course - continued - Learningweb- design- course - continued - Learning
web- design- course - continued - Learning
 
4. Web Technology CSS Basics-1
4. Web Technology CSS Basics-14. Web Technology CSS Basics-1
4. Web Technology CSS Basics-1
 
Minor Project.pptx
Minor Project.pptxMinor Project.pptx
Minor Project.pptx
 
Building Design Systems - Columbus Web Group
Building Design Systems - Columbus Web GroupBuilding Design Systems - Columbus Web Group
Building Design Systems - Columbus Web Group
 
Etec 632 web design
Etec 632 web designEtec 632 web design
Etec 632 web design
 
ABD205_Building a Superpower
ABD205_Building a SuperpowerABD205_Building a Superpower
ABD205_Building a Superpower
 
Recommender System Using AZURE ML
Recommender System Using AZURE MLRecommender System Using AZURE ML
Recommender System Using AZURE ML
 
Rated Ranking Evaluator (RRE) Hands-on Relevance Testing @Chorus
Rated Ranking Evaluator (RRE) Hands-on Relevance Testing @ChorusRated Ranking Evaluator (RRE) Hands-on Relevance Testing @Chorus
Rated Ranking Evaluator (RRE) Hands-on Relevance Testing @Chorus
 
Machine Learning With ML.NET
Machine Learning With ML.NETMachine Learning With ML.NET
Machine Learning With ML.NET
 

Recently uploaded

Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
ShamsuddeenMuhammadA
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
abdulrafaychaudhry
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Pro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp BookPro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp Book
abdulrafaychaudhry
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 

Recently uploaded (20)

Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Pro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp BookPro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp Book
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 

Application Theming the Accessible Way

Editor's Notes

  1. LESS compiles into CSS file Other preprocesssors: Sass, SCSS (different syntax of Sass), Stylus