Palette Perception

Topics:

Accessibility

Color

Palette Perception is a tool for evaluating color accessibility, combining contrast checks and color blindness simulations. It offers extensive customization, allowing users to input text and background colors in various formats, adjust text sizing, and modify the type and severity of color blindness. With real-time preview updates, hex code copying, and options to personalize the preview text, it provides a comprehensive and easy-to-use solution for ensuring accessible design. Palette Perception was created as a solo project for the Software Structures (SSUI) class at CMU.


Try Palette Perception!

Roles:

Sole designer, developer, researcher

Duration:

Nov 2024 - Feb 2025

Tools:

Figma

JavaScript

HTML

CSS

Person opening the Palette Perception platform, default settings for color contrast and color blindness severity

Palette Perception

Topics:

Accessibility

Color

Palette Perception is a tool for evaluating color accessibility, combining contrast checks and color blindness simulations. It offers extensive customization, allowing users to input text and background colors in various formats, adjust text sizing, and modify the type and severity of color blindness. With real-time preview updates, hex code copying, and options to personalize the preview text, it provides a comprehensive and easy-to-use solution for ensuring accessible design. Palette Perception was created as a solo project for the Software Structures (SSUI) class at CMU.

Try Palette Perception!

Roles:

Sole designer, developer, researcher

Duration:

Nov 2024 - Present

Tools:

Figma

JavaScript

HTML

CSS

Person playing ImaginAItion and selecting the adjectives for the prompt
Person opening the Palette Perception platform, default settings for color contrast and color blindness severity
Person playing ImaginAItion and selecting the adjectives for the prompt
Person opening the Palette Perception platform, default settings for color contrast and color blindness severity

Currently no design tool combines accurate color blindness simulation and web accessibility checks, making it difficult for designers to assess both visual accessibility and usability in a single workflow.

Currently no design tool combines accurate color blindness simulation and web accessibility checks, making it difficult for designers to assess both visual accessibility and usability in a single workflow.

Adobe Color, the most commonly used public-facing tool based on interviews with 3 designers, has separate tools for contrast checking and color-blind safe palettes (shown to the right), but switching between them results in different pages with little data retention. Other tools focus on either simulating color blindness or meeting Web Content Accessibility Guidelines (WCAG), but not both. Additionally, most web accessibility tools assume a one-size-fits-all approach to color blindness, failing to account for varying severity levels, which limits their effectiveness.

Adobe Color, the most commonly used public-facing tool based on interviews with 3 designers, has separate tools for contrast checking and color-blind safe palettes (shown to the right), but switching between them results in different pages with little data retention. Other tools focus on either simulating color blindness or meeting Web Content Accessibility Guidelines (WCAG), but not both. Additionally, most web accessibility tools assume a one-size-fits-all approach to color blindness, failing to account for varying severity levels, which limits their effectiveness.

Contrast checker tool of Adobe Color, with previews using default text
Color-blind safe palette creator tool of Adobe Color, with simulations of the different color blindness types

Key Question

Key Question

How can I integrate customizable color blindness simulations and web accessibility checks into a single platform while ensuring intuitive interactions?

How can I integrate customizable color blindness simulations and web accessibility checks into a single platform while ensuring intuitive interactions?

Key Challenges

Key Challenges

Palette Perception platform with live preview using: Carnegie Red for text color, black for background color, large heading text size, and simulation of protanomaly with 80% severity

As a first-time React user, the biggest challenge was managing dynamic content updates.

As a first-time React user, the biggest challenge was managing dynamic content updates.

To implement features like automatic text field resizing and real-time updates based on the severity slider, I explored many resources on utilizing React hooks. I also leveraged my existing knowledge of HTML and CSS to connect the React code with the front-end structure.

Another challenge was balancing usability with accessibility standards for the tool itself.

To address this, I organized the page with settings on the left for clarity and added affordances like shadows and reduced opacity on interactive elements. I also kept the tool’s color palette simple (using only dark blue, black, and white) to ensure it met WCAG standards.

Palette Perception platform with live preview using: Carnegie Red for text color, white for background color, body text sizing, and text "Example text"

Key Challenges

Palette Perception platform with live preview using: Carnegie Red for text color, black for background color, large heading text size, and simulation of protanomaly with 80% severity

As a first-time React user, the biggest challenge was managing dynamic content updates.

To implement features like automatic text field resizing and real-time updates based on the severity slider, I explored many resources on utilizing React hooks. I also leveraged my existing knowledge of HTML and CSS to connect the React code with the front-end structure.

Another challenge was balancing usability with accessibility standards for the tool itself.

To address this, I organized the page with settings on the left for clarity and added affordances like shadows and reduced opacity on interactive elements. I also kept the tool’s color palette simple (using only dark blue, black, and white) to ensure it met WCAG standards.

Palette Perception platform with live preview using: Carnegie Red for text color, white for background color, body text sizing, and text "Example text"

My Learnings

1.

Implementing accessibility specifications

Implementing accessibility specifications

I dove deep into accessibility standards in late October and early November, studying WCAG and inclusivity resources from major tech companies like Microsoft and Apple. Since I recently gained this knowledge, I hadn't yet had the chance to apply it. Through this project, I was able to integrate these guidelines, enhancing the tool's inclusivity, user-friendliness, and overall impact.

2.

2.

Coding with React

Coding with React

This was my first time using React. While I had a basic understanding of HTML and CSS, this project pushed me to expand that knowledge while learning intricate features of React. I spent a significant amount of time reviewing documentation and finding relevant examples to implement the features I envisioned.

Next Steps

Further testing

After developing Palette Perception, I conducted informal testing with four people. Based on their feedback, I plan to improve visibility of information about the colors and provide clearer documentation around the tool’s usage. Once these changes are implemented, I will conduct more formal usability testing with the target audience of designers.

2.

Making Palette Perception publicly available

I will start by ensuring the tool is compatible across different devices and browsers. Then, I plan to share the tool on relevant design and accessibility forums to collect further feedback. Simultaneously, I’ll promote it within my network and online communities. Throughout the process, I will keep refining the tool based on user input and evolving accessibility standards.

My Learnings

Implementing accessibility specifications

I dove deep into accessibility standards in late October and early November, studying WCAG and inclusivity resources from major tech companies like Microsoft and Apple. Since I recently gained this knowledge, I hadn't yet had the chance to apply it. Through this project, I was able to integrate these guidelines, enhancing the tool's inclusivity, user-friendliness, and overall impact.

2.

Coding with React

This was my first time using React. While I had a basic understanding of HTML and CSS, this project pushed me to expand that knowledge while learning intricate features of React. I spent a significant amount of time reviewing documentation and finding relevant examples to implement the features I envisioned.

Next Steps

1.

Further testing

After developing Palette Perception, I conducted informal testing with four people. Based on their feedback, I plan to improve visibility of information about the colors and provide clearer documentation around the tool’s usage. Once these changes are implemented, I will conduct more formal usability testing with the target audience of designers.

2.

Making Palette Perception publicly available

I will start by ensuring the tool is compatible across different devices and browsers. Then, I plan to share the tool on relevant design and accessibility forums to collect further feedback. Simultaneously, I’ll promote it within my network and online communities. Throughout the process, I will keep refining the tool based on user input and evolving accessibility standards.

Create a free website with Framer, the website builder loved by startups, designers and agencies.