Winnie.N®UX/UI & Product Designer
Vietnam · GMT+7
Project enquiry

Tell me what you’re building.

Share the essentials. I’ll review the brief and reply within 1–2 business days.

Your details are used only to review and respond to this enquiry.

All work02 / LMS ecosystem · Design system

LearnPress × Eduma

Turning fragmented LMS UI into a scalable system for learners, instructors, administrators, and education businesses.

Role
UI/UX Designer at PhysCode
Scope
UI audit · Product journey · Semantic tokens · Components · Migration · Design QA
Outputs
Foundations · Components · Patterns · Migration documentation
Product Design lens
Problem

UI accumulated over time into scattered components, non-semantic values, and inconsistent behaviour.

System

Ninety-three screens were mapped to seven journey stages before foundations and components were rebuilt.

Decision

Global tokens were separated from Alias tokens so components use meaning instead of raw values.

Evidence

Only measured design-file and migration results are reported; no business outcome is inferred.

02 / Product context

One LMS core. Many journeys and expressions.

LearnPress supports core learning tasks; Eduma brings that platform into different education and brand contexts. One component change can surface in a course listing, learning flow, assessment, and several demos. The design scope therefore had to follow journeys and shared decisions—not isolated screens.

03 / Reframing

The problem was not to make the UI look cleaner and more consistent.

How might the system support more journeys and brand contexts without multiplying repeated UI decisions?

This is framing from the design-file audit, not a usability-testing conclusion.
04 / System strategy

Move the unit of design from screens to shared decisions.

LearnPress had accumulated scattered components, non-semantic values, multiple role journeys, and WordPress constraints. The work began by mapping 93 screens to seven journey stages before rebuilding the system from raw tokens to reusable product patterns.

  1. 01Product ecosystem

    Define the relationship between LearnPress core, add-ons, themes, and Eduma demos.

  2. 02User journeys

    Organise 93 screens into seven stages instead of disconnected file sections.

  3. 03Semantic system

    Route raw values through Global and Alias tokens before they reach components.

  4. 04Reusable patterns

    Standardise anatomy, variants, states, and responsive behaviour around tasks.

  5. 05Product & handoff

    Check the system against real UI, WordPress constraints, and implementation guidance.

05 / Decisions & trade-offs

Each decision must remove complexity from more than one screen.

The decisions below describe reasoning traceable to the design files. They do not imply that every alternative was tested.

01

Start with journeys, not components.

Problem
The same pattern appears across screens but serves different moments in the learning journey.
Constraint
Auditing by Figma page or frame name would hide relationships across discovery, learning, assessment, and administration.
Decision
Map 93 screens to seven stages and four role groups before deciding which components should converge.
Consequence
Components are prioritised by journey reach, not by how easy they are to clean up.
02

Put meaning before hex values.

Problem
Eduma supports multiple brand directions, so the same action role may use different colours across demos.
Constraint
Hard-coding brand colour into a component would turn every demo into a separate system branch.
Decision
Separate Global from Alias tokens; components reference roles such as action, surface, border, and feedback.
Consequence
Shared structure remains stable while brand expression can change by context.
03

Control combinations instead of multiplying variants.

Problem
Combining type, size, state, and layout in one matrix makes variants grow faster than their value.
Constraint
An over-general library becomes hard to maintain; one component per case creates new fragmentation.
Decision
Organise Input as Base–Composite and keep ten type variants instead of an approximately 300-combination matrix.
Consequence
Properties have clearer responsibility, reducing ambiguity about the canonical source.
04

Migration must preserve traceability.

Problem
Existing screens and more than 1,000 icon instances could not be replaced in one pass without UI risk.
Constraint
Detaching for a quick fix breaks the link to the source and makes the next update more expensive.
Decision
Relink in controlled groups, isolate legacy values, and audit detached instances after migration.
Consequence
Thirty-one duplicate icon masters were removed while migrated instances stayed connected to the source.
06 / Ecosystem scaling

Fix the structure. Let expression change.

System thinking does not mean every demo must look the same. LearnPress keeps task logic, states, and accessibility stable; Eduma needs enough freedom for academy, university, kindergarten, or coaching contexts to feel distinct.

Keep consistent
  • Component anatomy and states
  • Semantic-token meaning
  • Information order within tasks
  • Responsive rules and touch targets
  • Naming and handoff specifications
Allow to vary
  • Brand colour mode
  • Expressive typography
  • Imagery and art direction
  • Audience-specific education content
  • Landing-page density by goal
100%spacing properties in Eduma Component Source bound to tokens
1,000+legacy icon instances relinked to the canonical library
31duplicate icon masters removed
0detached instances after migration
07 / Role & contribution

Connect the core system to real UI and delivery.

  1. 01

    Audit & architecture

    Review screens and patterns; organise Global/Alias tokens, typography, components, variants, and states.

  2. 02

    Product application

    Apply the system to LearnPress UI, Eduma demos, and landing pages; test shared structure across contexts.

  3. 03

    Migration & handoff

    Relink instances, audit detached components, specify responsive behaviour, and document implementation rules.

  4. 04

    Release touchpoints

    Design landing pages, thumbnails, covers, and release illustrations so product and message share one language.

08 / Outcomes and limits

Measure system change. Do not borrow missing metrics.

The migration produced measurable design-file outcomes: all spacing properties in the Eduma Component Source were token-bound, more than 1,000 legacy icons were relinked, 31 duplicate icon masters were removed, and detached instances remained at zero. These are system-quality results—not claims about conversion, delivery speed, or learning outcomes.

09 / Reflection
A Design System does not start with a component library. It starts by deciding which product choices must remain consistent—and which need permission to change.

The next step is to track component adoption, exception rate, and changes introduced as the system grows. That is how to verify whether the system actually reduces delivery complexity.

10 / Case study and products

Review the full reasoning and live products.

The full case study preserves the complete audit, reasoning, and visual narrative. The other links lead to Eduma Theme and LearnPress; source Figma files are intentionally not exposed as portfolio calls to action.

01Read the full case study02Explore Eduma Theme03Explore LearnPress

Turning fragmented UI into a coherent system?

Project enquiry

Tell me what you’re building.

Share the essentials. I’ll review the brief and reply within 1–2 business days.

Your details are used only to review and respond to this enquiry.