Gui Paes
WorkServicesAboutContact

Have a role or a project in mind?

contact@guipaes.com

Let's talk

Navigation

    HomeWorkServicesAboutContact

Social

    LinkedInBehanceGitHub

Gui Paes © 2026 —Product Designer, from problem to code.

Skillpilot

Design System and redesign of an LMS admin panel

Project banner

Challenge

Create a Design System the team could implement in Angular and redesign the admin space. The change requests lived in a PowerPoint that was hard to follow.

Client

Skillpilot

Year

2024

Type

UI/UX Design

Scope

UI/UX

Visual Design

Tools

Figma

Context

Skillpilot is a French skills-based LMS. Training organisations use it to manage programs, sessions, learners and attendance, and each client applies its own brand.

In 2024 I designed the Style Guide, the components and the redesign of the admin space, starting from a PowerPoint full of change requests. Everything was delivered in Figma, with a prototype.

Problem

For admins

  • A menu with everything at the same level.
  • Learner invitations set up again for every session.
  • Repeated content and fields nobody used.
  • A learner's status scattered across several screens.

For the business

  • Change requests in a PowerPoint the devs found hard to follow.
  • No visual system, so every screen started from scratch.
  • Built in Angular, with the Nebular library.
  • Skillpilot's brand without losing each client's customisation.
How do we make the LMS consistent and lighter for the people who run training, without losing each client's brand?

Where it started

Home screen in the 2024 demo.
Home screen in the 2024 demo.
  • More than 15 menu items, with “Templates” listed twice.
  • English and French on the same screen, and translation keys instead of labels (“ADD_FRAMEWORK_FROM_XLS”).
  • Empty lists showing only “No Rows To Show”.
Templates
Templates
Skills
Skills
Attendance
Attendance

Solution

01

Style Guide with tokens

Colours, type and icons as Figma variables.

02

Nebular components

The same library the team already used in code.

03

Client branding

A colour picker swaps only the main colour.

04

Sessions by status

Draft, active and ended, each with its own actions.

05

3-step forms

Create programs and sessions in short steps.

06

Learner view

A full profile, with status shown on the avatar.

The Design System

A palette built from Skillpilot's brand, with tokens as Figma variables. When the client changes, only the main colour changes.

Colours

Brand

Main#01937C
Darker#00493E
Lighter#99D4CB
Subtle#D9EFEB

States

Error#FF3B3B
Warning#FFCC00
Info#0063F7
Success#06C270

Neutrals

Dark 1#3A3A3C
Dark 2#6B7588
Light 1#DDE5E9
Light 4#FAFAFC

Typography and icons

Sofia Sans in 3 weights and Bootstrap Icons, the icon set the code already used.

Typography
Typography
Icons
Icons

Components

Built on Nebular, using the same names as the code.

Header
Header
Profile menu
Profile menu
Student Card
Student Card
Color Picker
Color Picker
Mentor Card, basic
Mentor Card, basic
Mentor Card, compact
Mentor Card, compact
Mentor Card, full
Mentor Card, full
Search Bar
Search Bar
Avatar with status
Avatar with status

Process

1. The product from all three sides

I created learner and teacher accounts in the demo to see where the admin's settings show up. That's why I started with the Style Guide and the components, which serve all three areas.

2. References

Without access to other LMS admin panels, I looked at Moodle, Descomplica, EBAC and Alura from the learner side. The admin flow came from the product itself, validated with the client.

3. Navigation map

Before any screens, I mapped the admin in FigJam. The map exposed the hierarchy problem, and we reorganised the pages.

Admin navigation map

4. 15 questions for the client

With the screens ready, I settled the business rules in a round of 15 questions. Some of the decisions:

QuestionDecision
Do invitations move to the template?Yes, set up once for every session.
Is the “skill validation method” used?No, so the field was removed.
Does “Session content” stay in General information?No, the program structure already shows it.
Where does the schedule live?Inside the session, next to the program tree.
Can an ended session be edited?No, it's read-only.

5. Handoff

With no contact with the devs, each screen was tagged with the PowerPoint slide it answers, and the main flow got a prototype. There was no testing with end users: validation was done with the founder and the COO.

Final UI

Active session monitoring, with learner status and dropout alerts.
Active session monitoring, with learner status and dropout alerts.
Learner profile
Learner profile
Session management
Session management

One session in three states

Draft
Draft
Active
Active
Ended
Ended

Home screen, before and after

Before
Before
After
After

Creating a program in 3 steps

Basic information
Basic information
Admin settings
Admin settings
Learning experience
Learning experience

Result: less cognitive load

There are no post-launch metrics, so the gain shows in the decisions:

BeforeAfter
Invitations set up in every sessionOnce, in the template
Unused fields and repeated contentRemoved
A menu with everything at the same levelItems grouped by topic
One long form on a single page3 short steps
Learner status across several screensStatus on the avatar
A different look on every screenShared components and tokens

Signals from the client

  • Approved the visual direction and asked for the screen redesign.
  • The 15 questions became documented decisions.

What I learned

  • Validating the map before the screens saved rework.
  • Next time, I'd talk to a few admins and a dev before settling the decisions.

My role

Sole designer on the project: analysis, navigation map, Style Guide, components, 18 screens and 9 modals, prototype and handoff. I worked with the founder and the COO, who brought the business rules and approved each delivery.

More work

See all work
Upskilling

Upskilling

Website redesign for Upskilling, a French professional training company, designed in Figma and built in WordPress with Elementor.

Sportflow

Sportflow

A product that gathers street races from several platforms into one search by name, state and city. From research to code, live with real users.