Case study / EdTech · Responsive UX

Oppia’s iframeexperience

Making embedded lessons more focused, accessible, and intuitive — without asking learners to leave the lesson.

UX/UI DesignerAccessibilityComponent DesignOpen-source education
A generic online learning platform displaying an embedded Oppia lesson, with the lesson language menu open and the audio controls visible.
Oppia iframe in context · Illustrative mockup of a generic host learning platform; the surrounding platform is conceptual.
RoleUX/UI Designer
DeviceMobile · Desktop
FocusWCAG 2.1 · Cognitive load
DeliverablesHeuristics · Flows · Wireframes · Components
Phase 01

Project overview
& context

One learning experience. Many host platforms. Very little room for distraction.

The canvas

Oppia is an open-source educational platform dedicated to accessible, high-quality interactive lessons for learners worldwide, particularly in underserved communities.

A key way to distribute Oppia content is through an embeddable iframe widget hosted on third-party learning portals and school platforms.

The constraint

A lesson inside a smaller world.

Inside an iframe, screen space is limited and the host environment can vary. The player needed to keep the lesson at the centre while making supporting tools easy to reach and use.

Constrained viewportMixed screen sizesMultilingual audio
How might we create a distraction-free, accessible lesson player while keeping audio, language, hints, and resources one simple interaction away?
Phase 02

Research &
problem discovery

A heuristic review and synthesis of student and educator feedback surfaced three recurring points of friction.

01

Fragmented audio & language controls

Playback, volume, and language selection lacked a clear unified pattern. Learners listening in regional languages often paused or replayed sections to recover context.

Audio continuity
02

Resources competing with the lesson

Glossaries, hints, and notes either occupied valuable canvas space or were hidden so deeply that learners could overlook them.

Cognitive load
03

Rigid embedded layouts

Host platforms used different container sizes. Some components clipped or wrapped awkwardly on tablet and netbook screens used in school labs.

Responsive behaviour
What learners needed

Stay in the lesson.

Keep attention on the current question, with secondary resources available only when needed and without losing progress or context.

What the interface needed

Be predictable everywhere.

Keep controls legible, states obvious, and interaction targets usable inside a range of iframe widths and input methods.

Phase 03

UX strategy &
information architecture

The redesign focused on keeping learners in the lesson while making essential feedback and audio tools clear, accessible, and available in context.

Feedback after an incorrect answer

01 / Contextual learner feedback

When a learner selects an incorrect answer, the interface provides clear feedback and invites them to try again while keeping the lesson context visible.

Oppia lesson with integrated audio and language controls

02 / Audio & language controls

Audio playback, language selection, progress, and replay controls are grouped into a persistent bar, making narration easier to access without competing with the lesson content.

Oppia feedback panel with a message field and submit action

03 / In-lesson feedback panel

A dedicated feedback panel lets learners write and submit comments without replacing the lesson experience, keeping the feedback action clear and focused.

Phase 04

UI execution &
component design

Inside constrained layouts, visual hierarchy and reliable interaction states are functional requirements—not decoration.

Aa

High-contrast feedback

Active playback, selected languages, and hint states use clear, legible indicators to communicate what is happening at a glance.

↗

Touch-friendly targets

Controls were designed around a minimum 44 × 44 px target size to support touch and pointer interaction on compact devices.

44px
A clear target area helps make small controls easier to activate.
↔

Fluid viewport behaviour

A modular grid and flexible spacing help the interface adapt to varying iframe widths and reduce clipping or horizontal scrolling.

⌁

Consistent component states

Reusable patterns give controls predictable placement and feedback across lessons, utilities, and host environments.

Interactive prototype

Explore the Oppia iframe experience.

Navigate the prototype to see how lesson content, audio controls, language selection, and contextual feedback fit together within a compact embedded player.

Explore prototype
Phase 05

Impact &
key learnings

The project outcomes focused on making supporting tools less of a barrier between learners and the lesson itself.

40%+

Faster audio and language switching

Reported reduction in task completion time when switching audio tracks and narration languages.

Reported project outcome
↑

More focus on learning

User testing indicated that students spent less time navigating settings and more time engaging with interactive prompts, with higher lesson completion rates.

↗

Reusable integration pattern

A modular design pattern was created to support adoption across partner portals while reducing layout regressions.

Impact figures and qualitative outcomes are based on the project notes available for this case study. The original test sample size was not retained in the recovered material.

“
Designing within an iframe is an exercise in visual discipline. Every pixel, margin, and drawer transition must justify its presence.

Designer’s reflection · Oppia iframe experience

What I took away

Accessibility is part of the structure.

Accessible target sizes, clear control states, and reduced cognitive load need to shape the architecture from the beginning—not be added after the interface is complete.

What made the challenge unique

The host is not always predictable.

Embedded experiences must work within another product’s constraints. Flexible layout rules and modular components are essential to protect the learning experience.

More selected work

Design with
purpose.

Back to selected work