Velocity X Components

E-Commerce

Cart Drawer

Right-docked cart drawer on desktop and a three-snap-point bottom sheet on mobile, with no backdrop-blur scrim, focus trap and Escape to close.

Subscription Included with the Velocity Components subscription.
bash
$ velocityx add cart-drawer

Built for react. Needs react, react-dom already installed as peer dependencies. An Astro-only project needs @astrojs/react wired up first — this won't run on its own in plain Astro.

Full docs for Cart Drawer →

Needs a licence key — subscribe here, then velocityx loginonce.

react v1.0.0 react react-dom
Cart Drawer

Catalogue page (behind the drawer)

Props

NameTypeRequiredDefaultDescription
openbooleanYes
onClose() => voidYes
items{ id, title, variant?, image?, price, qty, currency? }[]No[]
onQtyChange(id, nextQty) => voidYes
onRemove(id) => voidYes
subtotalnumberNo0
shippingnumber | nullNonullnull hides the row (unknown until checkout)
taxnumber?Yes
discountnumber?Yes
totalnumberNo0
currencystringNo'AUD'
localestringNo'en-AU'
checkoutHrefstringNo'/checkout'
continueShoppingHrefstring?Yes

File this creates

The CLI writes this path into your project, relative to its root — nothing else moves.

text
components/velocity/cart-drawer/CartDrawer.jsx

Using the Cart Drawer component

Install it with velocityx add cart-drawer. The CLI writes the source straight into your project — no runtime dependency, no registry lock-in, and it themes itself from the same primary-*/accent-* scale as the rest of the library.

More from E-Commerce.