Atelier

A marketplace where makers sell handmade pieces. Buyers shop and follow their orders; sellers run a studio with stock and earnings; an admin approves products. Rules stop overselling stock and buying your own piece, and a payment webhook marks orders paid.

Buyers sign up. Sellers run a studio. An admin approves products.

Atelier on desktopAtelier on a phone

What's inside

Shop with product pages and a cart. Orders with a status timeline. Seller studio with stock and earnings.

Tables

  • buyer name, email, city
  • seller name, email, shop_name, location, tagline, story, avatar, cover, …
  • admin name, email
  • product seller_id, title, description, category, price, stock, photo, photo_2, …
  • cart_item buyer_id, product_id, quantity
  • order buyer_id, seller_id, product_id, product_title, quantity, total, status, placed_on, …
  • payment order_id, provider_ref, amount, state

Roles

  • buyer Buyer, consumer
  • seller Seller, staff
  • admin Admin, staff

Pages

  • /team Team & access (admin)
  • /shop Shop (buyer, seller)
  • /studio Studio (seller)
  • /console Console (admin)
  • /orders My orders (buyer)
  • /studio/products Studio products (seller)
  • /studio/orders Studio orders (seller)
  • /console/sales Sales (admin)

Components

  • AtelierLogin Type-led sign-in: serif headline, three real product photos, white form card, Google sign-in
  • Storefront Buyer storefront: split hero with real pieces, makers, filterable collection, product page with gallery, bag drawer and checkout
  • Studio Maker studio: monthly earnings chart, what needs attention, products with add/edit sheet (AI description draft, photo upload), orders to ship
  • AdminConsole Curator console: review queue with approve/hide and undo, marketplace sales with maker and pipeline breakdowns, recent orders table
  • MyOrders Buyer order history: on-the-way and delivered tabs, each order with a status timeline
  • TeamIntro Heading for the Team & access page in the Atelier type style

Rules on every write

  • product Only Atelier curators can approve a piece.
  • order This order can't be placed.

How its workflows run

Each one is a server workflow in your project: it runs on its trigger, with retries, and its runs show in the builder's log.

  1. Order placed: reserve stock and tell the maker

    When a row changes: order created. Then: Look up product, then Update product, then Notify seller.

  2. Payment provider callback (inbound webhook)

    When a webhook arrives: webhook payment-callback. Then: Record a row.

  3. A successful payment marks the order paid

    When a row changes: payment created. Then: Look up order, then Update order.

  4. Tell the maker an order is paid

    When a row changes: order updated, when status is paid. Then: Notify seller.

  5. Tell the buyer their order shipped

    When a row changes: order updated, when status is shipped. Then: Notify buyer.

Set it up

It starts a new project, with its data, roles and sign-in ready.

  1. Start the project

    Use the button above, or ask your coding agent with the Appbricx MCP server connected (quickstart).

  2. Sign in as each role

    The demo logins open each role's home. Change what you like in plain words or in the contract.

  3. Deploy

    When dev looks right, deploy. Production gets a snapshot first, so you can roll back.

Use it with your coding agent

The agent creates the project, builds it and signs in as each role.

Prompt
Start a new Appbricx project from the Atelier template (slug "atelier") with use_template. Call it "My Atelier", then sign in as each role, verify it and tell me what to change first.
MCP call
{
  "tool": "use_template",
  "arguments": {
    "slug": "atelier",
    "name": "My Atelier"
  }
}
CLI
appbricx templates use atelier --name "My Atelier"

Make it yours in plain words.