Accessibility
Last updated October 14, 2026
We want every student to be able to use CoffeeChat, including people who use a screen reader, a keyboard instead of a touchscreen, larger text, or high-contrast settings. Our goal is to meet the Web Content Accessibility Guidelines (WCAG) 2.2 at level AA.
What we tested
On September 29, 2026 we checked every screen of the app, signed out and signed in, on a phone-sized screen. We ran the whole check again on September 30 after the app was redesigned, and on October 8 after its colors changed and the public pages were rebuilt. On October 9 we ran the automated scan on the screens added that day (the first screen of the photo verification face scan, the help pages inside the app, log in and sign up), and on October 10 on the rebuilt profile card (closed and open) and the new Experience section of Profile. The same day, after pinch-to-zoom was turned off (see Known issues), we checked every screen with the page enlarged to 150% and to 200% on a phone-sized screen:
- An automated WCAG 2.2 AA scan (axe-core) of every page.
- Moving through the landing page, log in, sign up and the main app using only the keyboard, checking that every control can be reached and shows a visible focus ring.
- What a screen reader receives on each page (names of buttons and links, headings, images, and announcements).
- Color contrast of every text color against every background it sits on.
- Layout at a 320-pixel-wide screen, the narrowest common phone.
- Layout with the browser’s own zoom at 150% and 200% on a phone-sized screen (in Chrome). No screen needs sideways scrolling at either size.
- On October 10, 2026: the five tabs, a conversation, sign up and the match screen with only the text enlarged, to 130% and to 150%, in Chrome’s phone mode (the closest we can get to Safari’s text size control without an iPhone). Every button and tab stays readable and in reach; long names and one-line previews are shortened with “…”.
What we fixed
- Text and button colors meet the 4.5:1 contrast minimum on every background they sit on.
- Menus and dialogs close with Escape, move focus into themselves when they open, and return it when they close; dialogs keep keyboard focus inside.
- Profile cards stacked behind the top card are no longer reachable by keyboard or read aloud.
- The verified check, the streak counter, badges, chat messages (including who sent them) and error messages are now announced properly.
- The app uses a proper icon set instead of emoji, and decorative icons are hidden from screen readers.
- Animations turn off when Reduce Motion is on.
- The menus at the top of the website open with a mouse, a tap or the keyboard, and close with Escape.
- Tap targets meet the WCAG 2.2 minimum size, and most are 44 points or larger.
- Every page has its own title, and the landing page no longer scrolls sideways on small phones.
- Swiping always has a button alternative: Pass and Like under the card, Undo after a pass, and Read more on the card itself to open it. The colors and the small animation that answer a swipe are extras: nothing depends on seeing them, and the animation is off when Reduce Motion is on. On the Profile screens, where a swipe to the right goes back, the back arrow at the top does the same.
- Editing your profile has no Save button to find: each change is saved as you make it, the top of the screen says “Saved” (announced to screen readers), and a change that could not be saved says why and stays on screen.
- Framing your profile photo: drag to move it and pinch to zoom. There is no zoom slider any more. Without a pinch, a double tap zooms in a step (and back out from the closest zoom), a mouse wheel zooms, and the arrow keys move the photo while plus and minus zoom it.
- On a profile card, the LinkedIn link used to sit inside the card’s own “read more” button, which some screen readers handled awkwardly. Read more is now its own button and the link sits outside it.
- Photo verification does not require the face scan. If you can’t turn your head, or the scan can’t follow your face, choose “Send a selfie instead” and a person on our team does the comparison. During the scan, each instruction is announced as it changes.
Known issues
- The app itself runs on a phone or a tablet. On a computer it shows one screen that sends you to your phone, with a code to scan and the address written out under it. This website, the help and legal pages, log in and the password pages do work on a computer, with a mouse or with the keyboard alone. If you use a keyboard or a switch in place of a touchscreen, one connected to your phone or tablet works in the app. If a computer is the only way you can use CoffeeChat, write to us at the address below so we know.
- Pinch-to-zoom is off, as in a phone app: spreading two fingers does not enlarge the screen. To make everything bigger, use your browser’s own text size or zoom control (in Safari on an iPhone, the “aA” button in the address bar; in Chrome, Zoom in the menu), or your phone’s own Zoom setting (on an iPhone: Settings, Accessibility, Zoom). The app is built to fit the screen at those larger sizes, with one weak spot: at 200% a profile card on Swipe is short, and you open it with “Read more” to read it. We have checked this in Chrome. On October 10, 2026 we found that Safari’s “aA” control was not enlarging the app’s text on an iPhone, and removed the setting that was stopping it. On October 14, 2026 we confirmed on a physical iPhone that the “aA” control now makes the app’s text larger and smaller. This is a place where we may fall short of our goal: WCAG expects that text can be enlarged to 200% (guideline 1.4.4), and here that depends on those controls rather than on pinching, and our automated scan flags every page for it. If this gets in your way, email us (see below).
- The app has one light appearance. It does not switch to a dark appearance when your device is set to dark mode.
- We have not yet tested with VoiceOver on a physical iPhone. Our screen reader checks so far are automated.
- The “I’m human” check on sign up and log in is provided by Cloudflare. It usually runs without showing anything. When it does ask for a tick and gives you trouble, email us and we will help you get in.
- Voice input in chat and practice depends on your browser’s speech recognition, and isn’t available in every browser.
Tell us about a problem
If anything in CoffeeChat is hard or impossible for you to use, email coffeechat.dev.team@gmail.com with the subject “Accessibility problem”. Tell us the page, what you were trying to do, and the device, browser and any assistive technology you use. We aim to reply within 5 business days and will work with you to get you what you need in the meantime.