top of page

NOMADHAIR: Product

Fullstack appointment scheduling app for NomadHair

ROLE

Designer,Developer

DURATION

04.2024 ~ 06.2024

TECH STACK

NextJS, TailwindCSS, Kinde OAuth, Resend, Sanity CMS, Storybook
image 40

Context

What is NomadHair?

NomadHair is a men's haircut service that is delivered to your place.
Sign up, book your appointment, and enjoy the quality haircut without having to leaving your home.
desktop-1.png
mobile-1.png
mobile-2.png

Background

The story of NomadHair started in my college dorm room, where I offered free haircuts to Korean international students struggling to find barbers who understood their cultural hair preferences.

Having faced similar challenges, I wanted to help others express their identity through their hairstyles. The service grew beyond campus over the last 7 years, but as demand increased, scheduling became difficult. This led to the creation of NomadHair App.

Key Features

Schedule your appointments at your convenience.

image 82

Manage your appoinment details

Once the appointment is confirmed, you wil recieve a confirmation email.
Feel free to edit or cancel your appointment details through the app.
image 62

System Architecture

High level architecture diagram of NomadHair
image 83

Built with Design System

I wanted to implement Component-Driven Development approach
by building the product with NomadHair Design System (NDS).
Few benefits of this approach were:
  • Faster design iterations by avoiding making the same design decision twice
  • Maintain the app's cohesive and uniform appearance, even as the design evolves over time
  • Keep the design process and development in sync with the single source of truth.
image 79

Challenges

  • Replacing database solution due to compatibility issues (Firebase -> Sanity CMS)
  • Implementing confirmation e-mail templates.
  • Handling datetime formats (ISO 8601 & UTC) during reservation validation process
image 68
image 69

Areas for Improvements

  • After users’ feedback I learned that I need better UX to simplify the reservation process.
  • Always be sure to research and test compatibility between different libraries tools prior to implementations.
bottom of page