Use the Vaul Drawer component
mainVaul provides a drawer component built on top of Radix UI Dialog. It supports snap points, dragging, and various directions (top, bottom, left, right).
To use it, compose the Root, Overlay, and Content components. You can optionally include a Handle to allow dragging only via a specific element.