169
A checkout with generic express-pay buttons, delivery options that slide a selection ring, quantity steppers, a promo field that validates, and totals whose digits roll as anything changes.
akacheckout·order summary·cart
Run this in any project set up for the shadcn CLI. It copies the Checkout Summary source into your components folder, so the code is yours to change.
npx shadcn@latest add https://devl.dev/r/checkout-summary.jsonImport it and render it. Every prop has a typed default, so it works straight away, and you pass your own data when you’re ready.
import { CheckoutSummary } from "@/components/checkout-summary";
export default function Page() {
return <CheckoutSummary />;
}A free React block in the Apps collection, written in TypeScript with Tailwind CSS on coss ui. MIT licensed.
Read from the Checkout Summary source. Everything is optional unless it says required.
| Prop | Type | Default |
|---|---|---|
| itemsrequired | CheckoutItem[] | — |
| shippingrequired | CheckoutShipping[] | — |
| express | CheckoutExpress[] | DEFAULT_EXPRESS |
| taxRate | number | 0.0825 |
| currency | string | "$" |
| string | "" | |
| validatePromo | (code: string) => Promise<CheckoutPromo | null> | async () => null |
| onPay | (total: number) => Promise<void> | async () => {} |
| onExpress | (method: CheckoutExpress) => void | — |
| className | string | — |