Return to Work

2024 – 2026 · Design system · Real Estate, Adevinta

PanotDesignSystem

One design system for Fotocasa and Habitaclia, on web, iOS and Android. Designing for both brands went from nine files to one, with two switches: the brand, and light or dark.

Client
Fotocasa & Habitaclia · Adevinta
Role
Product Designer in the design system team
My domain
Login & registration, Attract users and users’ area
Tools
Figma variables & modes · zeroheight, then an in-house library · Jira
Four screens built from Panot: the new Fotocasa home and the results list in the current iOS app, after the rebrand, and the map search and property detail in Habitaclia orange.

Fotocasa and Habitaclia worked from nine separate files: a Brand Foundations file for each brand, and a component library for every platform — Android, iOS, React and SUI for Fotocasa; Native, React and SUI for Habitaclia. Keeping them in step was too expensive, and what slipped through came back as UX debt.

Panot replaced it with one library built on Figma variable modes: tokens in three layers and one set of components that take their look from the brand, the theme and the platform. Within the design system team, my domains were login and registration, attracting users and the users’ area — including the forms, error screens and landings they rely on.

Nine files to one

Before · 9 files

Fotocasa

  • Brand Foundations
  • Android Components
  • iOS Components
  • React Components
  • SUI Components

habitaclia

  • Brand Foundations
  • Native Components
  • React Components
  • SUI Components

After · 1 file

Panot — Real Estate DS
  • Foundations, components and key screens
  • Fotocasa and Habitaclia
  • Light and dark
  • Web, Android and iOS

A change used to be repeated across brands and platforms. Now it’s made once, and the modes do the rest.

Panot theme variables in Figma: Main, Accent, Support, Background, Surface and Error, each pointing to a different primitive in four modes — Fotocasa light, Habitaclia light, Fotocasa dark and Habitaclia dark — and radius 8 for Fotocasa against 4 for Habitaclia.
Theme variables after the Fotocasa rebrand, rebuilt from the Figma file: one name, a mode per brand and theme. Same token, different brand.

From a colour to a button

The button points to a token; the token changes with the brand, the theme and the platform.

  1. 01 Primitive

    Blue Brand/500

    Orange/500

  2. 02 Theme

    Main · FC→ Blue Brand/500

    Main · HB→ Orange/500

  3. 03 Platform

    FCOpen Sans · Roboto · SF Pro

    HBUbuntu everywhere

  4. 04 Component

    ContactarFotocasa · radius 8

    ContactarHabitaclia · radius 4

One rebrand, no redraw

We designed the Fotocasa rebrand into Panot as a team; it shipped after I left. A new blue, a new secondary colour and a new typeface arrived as a new theme mode — not as a new library. Habitaclia was frozen, so only Fotocasa moved to the new theme.

FC Light

MainBlue/500

SupportGreen-washed/500

TypeOpen Sans

Contactar

FC Light V2

MainBlue Brand/500

SupportMint/500

TypeFT Regola Neue

Contactar

Same components, same screens. The brand changed in the theme layer.

What the library covers

67 component families, 1,879 components, for web, Android and iOS.

Forms

  • Input field
  • Input phone field
  • Text area
  • Searchbox
  • Autocomplete
  • Select
  • Select ghost
  • Checkbox
  • Radio button
  • Radio button group
  • Switch
  • Slider
  • Stepper
  • Data counter
  • Validation code
  • Upload
  • Photo uploader

Actions & navigation

  • Button
  • Button glass
  • Button social
  • Icon button
  • Link
  • Chip
  • Toggle group
  • Tabs
  • Menu
  • Breadcrumb
  • Pagination
  • Top bar apps
  • Top bar web
  • Bottom bar
  • Action bar
  • Command

Content & real estate

  • Image
  • Carousel
  • Accordion
  • Collapsible
  • Avatar
  • Rating
  • Banner
  • Map
  • POIs
  • Card recommended
  • Card map
  • Card alerts
  • Card favourites
  • Card discarded
  • Price & packaging cards

Feedback & overlays

  • Alert iOS
  • Alert notification
  • Snackbar
  • Toaster
  • Tooltip
  • Popover
  • Modal apps
  • Modal web
  • Dialog Android
  • Drawer
  • Sheet
  • Coachmark
  • Push card

Status & loading

  • Spinner
  • Progress steps
  • Progress bar
  • Progress circle
  • Badge
  • Tag

How a change reached the code

  • ProposeA designer opens a Jira ticket with the change or the new component.
  • ReviewDesignOps, who own the system, accept it or send it back.
  • UpdateIt lands in Figma and in the in-house component library developers build from.

We documented the system in zeroheight first, then moved to a library of our own.

9 → 1

files: seven component libraries and two brand foundations, merged into one.

2

switches: Fotocasa or Habitaclia, light or dark.

1,879

components across web, Android and iOS.

Under NDA

The full case

The three layers of tokens, the same screen in both brands, my domain and how changes reached the code — with the screens. Password protected — I share it by message.

Read the full case

Next case

Login

View case study