Hey everyoneÂ
Sharing the design process behind a recent education app our team worked on, because a few of the Figma-specific decisions genuinely changed how the product turned out—and I'd love feedback from folks who design learning products.
I'm part of the design team at Dev Technosys, and a significant chunk of our work is education app development, so student-facing flows are something we think about a lot. This post is about the design side: how we used Figma to prototype, test, and hand off a K–12 learning app without drowning students in UI.
The core problem: cognitive load
The greatest challenge in any education app isn't feature count — it's attention. Students (especially younger ones) drop off the second a screen feels busy. Our north star for the whole file became one primary action per screen.
That single rule drove most of our Figma structure.
How we set it up in Figma
1. A tokenized design system first, screens second. We built color, type, spacing, and elevation as variables before designing a single lesson screen. Two reasons:
- Education apps ship in modes—light, dark, and a high-contrast accessibility mode. Variables let us flip the entire prototype between them instantly.
- Handoff to the engineering side of our education app development services was far cleaner when every value was a named token, not a raw hex.
2. Component variants for lesson states. Each lesson card had variants for locked / available / in-progress / completed. Using boolean and instance-swap properties meant the whole learning path could be assembled by product folks without touching the underlying components.
3. Auto layout everywhere for responsive lesson content. Learning content is unpredictable — a math problem might be one line or a full paragraph. Nesting auto layout let cards grow gracefully instead of breaking, which mattered a lot when we localized into a second language and text expanded by ~30%.
UX decisions worth stealing
A few things that tested well with students:
- Progress you can feel. A persistent progress ring beat a percentage number in usability tests — kids responded to the shape filling up.
- Reduce choice at the start. Onboarding asked for grade level and one subject, nothing more. Every extra question dropped completion rates.
- Celebrate small. A short micro-interaction after each completed lesson (prototyped with Smart Animate) drove repeat sessions more than any streak counter.
- Accessibility isn't optional in edtech. We designed to WCAG AA from the first frame—minimum touch targets, contrast tokens, and screen-reader-friendly ordering. This phase is usually where rushed education app development solutions cut corners, and it's the first thing that gets flagged in school procurement reviews.
What I'd do differently
- Start the high-contrast mode as a variable mode on day one instead of retrofitting it.
- Prototype the empty and error states earlier — students hit "no internet" and "lesson failed to load" more than we assumed.
- Use a dedicated prototype file separate from the design-system file; ours got heavy.
Questions for the community
- For those who design learning apps, how do you handle long-form lesson content in auto layout without the file becoming unmanageable?
- Any smart patterns for prototyping adaptive difficulty in Figma without building a hundred frames?
- How do you organize variables for multiple accessibility modes at scale?
Happy to share more of the component setup if it's useful. We do a fair amount of education app development at Dev Technosys, so I'm glad to go deep on the Figma mechanics—and equally keen to learn how the rest of you approach student-facing design.
Thanks for reading.
