Skip to contentVibraUI
12 pagesopens at /ecommerce

E-commerce

A store's back office: sales, the order book, products, customers, stock, the parcels still to go out and the till in the shop.

Preview
/ecommerce

Install

The whole dashboard — every page under one sidebar, the sample data they read — is one command. Or take a page at a time: each one brings the sidebar with it.

npx shadcn@latest add @vibra/ecommerce
  • /ecommerceStorefront
    npx shadcn@latest add @vibra/ecommerce-overview
  • /ecommerce/salesSales dashboard
    npx shadcn@latest add @vibra/ecommerce-sales
  • /ecommerce/orders/overviewOrders dashboard
    npx shadcn@latest add @vibra/ecommerce-orders-overview
  • /ecommerce/ordersOrder book
    npx shadcn@latest add @vibra/ecommerce-orders
  • /ecommerce/orders/[id]Order record
    npx shadcn@latest add @vibra/ecommerce-order
  • /ecommerce/productsProduct catalogue
    npx shadcn@latest add @vibra/ecommerce-products
  • /ecommerce/products/[id]Product record
    npx shadcn@latest add @vibra/ecommerce-product
  • /ecommerce/customersCustomer list
    npx shadcn@latest add @vibra/ecommerce-customers
  • /ecommerce/customers/[id]Customer record
    npx shadcn@latest add @vibra/ecommerce-customer
  • /ecommerce/inventoryInventory dashboard
    npx shadcn@latest add @vibra/ecommerce-inventory
  • /ecommerce/fulfillmentFulfillment
    npx shadcn@latest add @vibra/ecommerce-fulfillment
  • /ecommerce/posPoint of sale
    npx shadcn@latest add @vibra/ecommerce-pos

Widgets

Single cards cut from these pages, each installed on its own.

  • The Store headline card
    npx shadcn@latest add @vibra/widget-ecommerce-overview-store-stats
    From Storefront

    Store headline

    Gross sales, orders, new customers and refunds over the window, each against the window before; reads storeStats().

  • The Sales by category card
    npx shadcn@latest add @vibra/widget-ecommerce-overview-sales-by-category
    From Storefront

    Sales by category

    Revenue by category as a ring over the table behind it — orders, revenue and growth a category; reads salesByCategory().

  • The Conversion funnel card
    npx shadcn@latest add @vibra/widget-ecommerce-overview-conversion-funnel
    From Storefront

    Conversion funnel

    Sessions down to carts, checkouts and orders, the last step measured and the ones above it modelled from it, as the footer says; reads conversionFunnel().

  • The Top products card
    npx shadcn@latest add @vibra/widget-ecommerce-overview-top-products
    From Storefront

    Top products

    The eight products the window moved most units of, ranked, each with its category; reads topProducts().

  • The Store orders card
    npx shadcn@latest add @vibra/widget-ecommerce-overview-orders-table
    From Storefront

    Store orders

    Everything placed in the window, newest first, filtered by status and searched by number or customer, the view kept in the URL; reads storeOrders().

  • The Sales headline card
    npx shadcn@latest add @vibra/widget-ecommerce-sales-sales-stats
    From Sales dashboard

    Sales headline

    Bookings, open pipeline and win rate with their changes, and the quarter's quota as a goal track beside them; reads salesStats().

  • The Revenue by month card
    npx shadcn@latest add @vibra/widget-ecommerce-sales-revenue-by-month
    From Sales dashboard

    Revenue by month

    Booked against fulfilled value over the complete months on the book — the gap between them is the warehouse; reads revenueByMonth().

  • The Pipeline by stage card
    npx shadcn@latest add @vibra/widget-ecommerce-sales-pipeline-by-stage
    From Sales dashboard

    Pipeline by stage

    The open value that has reached each stage, narrowing as a funnel, and how many deals are open; reads pipelineByStage().

  • The Reps by bookings card
    npx shadcn@latest add @vibra/widget-ecommerce-sales-reps-leaderboard
    From Sales dashboard

    Reps by bookings

    Closed-won value by rep over the last months, ranked; reads repLeaderboard().

  • The Deals card
    npx shadcn@latest add @vibra/widget-ecommerce-sales-deals-table
    From Sales dashboard

    Deals

    Every deal on the board, newest first — searchable by account, filterable by stage, sortable and paged; reads deals().

  • The Order KPIs card
    npx shadcn@latest add @vibra/widget-ecommerce-orders-overview-order-kpis
    From Orders dashboard

    Order KPIs

    Orders, revenue, average order and fulfilment rate for the closed month, each on a bullet track against its target and moved against the month before; reads kpis().

  • The Orders by weekday card
    npx shadcn@latest add @vibra/widget-ecommerce-orders-overview-orders-by-weekday
    From Orders dashboard

    Orders by weekday

    Every order on the book, by the day of the week it was placed; reads ordersByWeekday().

  • The Revenue by region card
    npx shadcn@latest add @vibra/widget-ecommerce-orders-overview-revenue-by-region
    From Orders dashboard

    Revenue by region

    Booked value by where the order shipped, as a donut with the whole book in its centre; reads revenueByRegion().

  • The Fulfilment card
    npx shadcn@latest add @vibra/widget-ecommerce-orders-overview-fulfilment-status
    From Orders dashboard

    Fulfilment

    Every order on the book by state in one bar, the five counts under it and the share shipped; reads fulfilmentSplit().

  • The Past orders card
    npx shadcn@latest add @vibra/widget-ecommerce-orders-overview-past-orders
    From Orders dashboard

    Past orders

    The whole book, newest first — searchable by account, filterable by status and region, sortable and paged; reads pastOrders().

  • The Order items card
    npx shadcn@latest add @vibra/widget-ecommerce-order-order-items
    From Order record

    Order items

    What was bought — each line's product, quantity, unit price and total at what the order charged — with the order's total under them; reads orderRecord(id).

  • The Shipment card
    npx shadcn@latest add @vibra/widget-ecommerce-order-order-shipment
    From Order record

    Shipment

    Where the parcel has got to as a stage bar, the time each stage was reached, the carrier, service, tracking and weight, and a hold when there is one; reads orderRecord(id).

  • The Customer card
    npx shadcn@latest add @vibra/widget-ecommerce-order-order-customer
    From Order record

    Customer

    Who placed the order, where it ships, how many orders they have placed and what they have spent on the ones they kept; reads orderRecord(id).

  • The Payment card
    npx shadcn@latest add @vibra/widget-ecommerce-order-order-payment
    From Order record

    Payment

    How the order was paid for, what was charged, refunded and kept, read off its live status; reads orderRecord(id).

  • The Other orders card
    npx shadcn@latest add @vibra/widget-ecommerce-order-order-history
    From Order record

    Other orders

    The customer's other orders, newest first, each with its status and total and a link to its own page; reads orderRecord(id).

  • The Catalogue figures card
    npx shadcn@latest add @vibra/widget-ecommerce-products-products-stats
    From Product catalogue

    Catalogue figures

    Active products, units sold against the thirty days before, stock value at list price, and how many are at or below their reorder point; reads productRows().

  • The Product figures card
    npx shadcn@latest add @vibra/widget-ecommerce-product-product-figures
    From Product record

    Product figures

    Price, stock against the reorder point, and units and revenue over twelve weeks against the twelve before; reads productRecord(id).

  • The Units sold card
    npx shadcn@latest add @vibra/widget-ecommerce-product-units-chart
    From Product record

    Units sold

    Twelve weeks of units, a column a week, with the total and the weekly average above them; reads productRecord(id).

  • The Details card
    npx shadcn@latest add @vibra/widget-ecommerce-product-product-details
    From Product record

    Details

    The product's drawing and what the catalogue holds for it — SKU, category, supplier, reorder point and status — with how many orders hold it and when it first sold; reads productRecord(id).

  • The Orders holding the product card
    npx shadcn@latest add @vibra/widget-ecommerce-product-product-orders
    From Product record

    Orders holding the product

    The newest orders that hold the product, whatever became of them, each with its customer, quantity and line total; reads productRecord(id).

  • The Price and stock card
    npx shadcn@latest add @vibra/widget-ecommerce-product-product-edit
    From Product record

    Price and stock

    The price and the stock edited in place and saved through the server, a refusal marked on the field it is about; reads productRecord(id).

  • The Account overview card
    npx shadcn@latest add @vibra/widget-ecommerce-customer-customer-overview
    From Customer record

    Account overview

    What the account is signed up to — status, plan, seats, contact, renewal and card on file — beside its monthly revenue line and what it has paid; reads customerRecord(id).

  • The Inventory headline card
    npx shadcn@latest add @vibra/widget-ecommerce-inventory-inventory-stats
    From Inventory dashboard

    Inventory headline

    SKUs stocked, units on hand, inventory value and how many SKUs are below their reorder point; reads inventoryStats().

  • The Stock levels card
    npx shadcn@latest add @vibra/widget-ecommerce-inventory-stock-levels
    From Inventory dashboard

    Stock levels

    The largest positions on the shelf by value, each with its supplier, units on hand, reorder point and how many reorder points deep it is; reads stockLevels().

  • The Reorder alerts card
    npx shadcn@latest add @vibra/widget-ecommerce-inventory-reorder-alerts
    From Inventory dashboard

    Reorder alerts

    The products at or below their reorder point, emptiest first, with the quantity that brings each shelf back; reads reorderAlerts().

  • The Inventory turnover card
    npx shadcn@latest add @vibra/widget-ecommerce-inventory-turnover-chart
    From Inventory dashboard

    Inventory turnover

    How many times a year each category's shelf turns over, from the units sold against the units on hand; reads turnoverByCategory().

  • The Suppliers card
    npx shadcn@latest add @vibra/widget-ecommerce-inventory-suppliers-list
    From Inventory dashboard

    Suppliers

    The suppliers holding the most stock by value, each with its SKUs and how many are below reorder; reads suppliers().

  • The Fulfillment headline card
    npx shadcn@latest add @vibra/widget-ecommerce-fulfillment-fulfillment-stats
    From Fulfillment

    Fulfillment headline

    Parcels in transit, delivered this week, open exceptions and mean transit time, each against the span before; reads fulfillmentStats().

  • The Parcels by service card
    npx shadcn@latest add @vibra/widget-ecommerce-fulfillment-throughput-chart
    From Fulfillment

    Parcels by service

    How many parcels each service handed to a carrier, by week or by calendar month as the reader switches; reads throughput().

  • The Carriers card
    npx shadcn@latest add @vibra/widget-ecommerce-fulfillment-carrier-mix
    From Fulfillment

    Carriers

    The parcels each carrier is holding right now, with how many it has already delivered; reads carrierLoad().

  • The In flight card
    npx shadcn@latest add @vibra/widget-ecommerce-fulfillment-in-flight-board
    From Fulfillment

    In flight

    The moving parcels that have stood at their stage longest, a stage bar each, oldest first; reads inFlightParcels().

  • The Exceptions card
    npx shadcn@latest add @vibra/widget-ecommerce-fulfillment-exception-list
    From Fulfillment

    Exceptions

    The parcels that stopped and what stopped them, newest problem first, and how many more are open; reads openExceptions().

Reads from db

Every figure on these pages is read from these repositories of the sample store. Swap one for your own API and each page that reads it follows.

  • db.auditEvents
  • db.customers
  • db.invoices
  • db.members
  • db.notifications
  • db.orders
  • db.paymentMethods
  • db.plans
  • db.products
  • db.shipments
  • db.subscriptions