Experience | Product & Engineering |
---|---|
Hilary Gordon
| Poornima Hanumara
|
Bronwyn Hawkins
| Colin Brash
Mian Khalid (Khalid)
|
Slack Channels:
#mobile-design-sync for design related conversations
#mobile-engage-sync for Engage squad and Mobile squad crossover collaboration
#mobile-team for product delivery team happenings, internal chatter only
#mobile for broader communications
Aliases
@ edx-mobile for the whole mobile squad
@ mobile-ios for the iOS team
@ mobile-android for Android team
Support platform accessibility tools
Screen readers (VoiceOver on iOS and iPadOS, TalkBack on Android)
OS Magnifier
External keyboards
Voice Input
Touchzones - anything clickable should be a minimum of 24px wide and 24px tall (white space counts, and can overlap for different targets)
Minimum font sizes - Don’t go smaller than 10pt, we have x-small at 11pt right now
Interactive items: text should be able to grow by 50% (via text size settings in the OS) without colliding with container borders. Non-interactive items: heading and paragraph text should be able to grow by 200% with orderly reflow.
Don’t make the user rotate the screen.
Headings should be marked as such, and the apps should maintain a consistent visual hierarchy
Don’t use hover behaviors on mobile since they don’t exist! Use tap instead.
Check the Mozilla Mobile Accessibility Checklist
Funka’s Guidelines for the development of accessible mobile interfaces
- published by Android developers and covers apps
Understanding accessibility for iOS
– Apple’s guidance on making iOS apps accessible
When the design is almost final/final, check with Jeff Witt (Deactivated) either via a quick meeting or asynchronously via Slack/email
This should generally line up with when the design is getting reviewed with the PM partner
Continue to reinforce accessibility check during development process as well before launch
Consider native:
“When it makes no, difference use the native control in design”, in other words, bias towards native unless there’s a good reason not to
If the interaction is the same and color is the only difference, and the difference is small we should use native. For example: we will not implement a custom design for the switch control on android.
Consider custom if:
Interactions are heavily branded and specific to edX
We want a consistent experienced for our learners across both platforms
On a case by case basis, we’ll evaluate the needs of the experience and determine how to move forward
The key benefit of a web view is that we inherit the enhancements that is implemented on the web
The key benefit of a native experience is that we can leverage native functionality for the device, which enables deeper and more bespoke interactions
https://material.io/components?platform=android for Android
Official Figma: https://www.figma.com/@materialdesign
Human Interface Guidelines for iOS
Mobile supplemental components Figma library - hi fi components for mobile use