I prefer to move fast and ship robust features, In general you should always use abstractions, when you know they will solve pain points and ****make our lives simple :) ****

The thing to keep in mind here is

As frontend engineers it is our job to play with html, css and be good at it, we are responsible for the interface user interacts with but there are two things you should always keep in mind

This is a list of some personal components + libraries I rely on that help me move fast while creating interfaces

Samselikoff - 2022 05 11 Tailwind Ui Interactive Calendar - StackBlitz

@headlessui/react Listbox Multiple Mockup - CodeSandbox

Primitives – Radix UI

Headless UI

Build UI - High-quality videos on frontend development

Every package which will have a major change in the frontend codebase should be documented in a notion page.