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.
What's inside
Shop with product pages and a cart. Orders with a status timeline. Seller studio with stock and earnings.
Tables
buyername, email, citysellername, email, shop_name, location, tagline, story, avatar, cover, …adminname, emailproductseller_id, title, description, category, price, stock, photo, photo_2, …cart_itembuyer_id, product_id, quantityorderbuyer_id, seller_id, product_id, product_title, quantity, total, status, placed_on, …paymentorder_id, provider_ref, amount, state
Roles
buyerBuyer, consumersellerSeller, staffadminAdmin, staff
Pages
/teamTeam & access (admin)/shopShop (buyer, seller)/studioStudio (seller)/consoleConsole (admin)/ordersMy orders (buyer)/studio/productsStudio products (seller)/studio/ordersStudio orders (seller)/console/salesSales (admin)
Components
AtelierLoginType-led sign-in: serif headline, three real product photos, white form card, Google sign-inStorefrontBuyer storefront: split hero with real pieces, makers, filterable collection, product page with gallery, bag drawer and checkoutStudioMaker studio: monthly earnings chart, what needs attention, products with add/edit sheet (AI description draft, photo upload), orders to shipAdminConsoleCurator console: review queue with approve/hide and undo, marketplace sales with maker and pipeline breakdowns, recent orders tableMyOrdersBuyer order history: on-the-way and delivered tabs, each order with a status timelineTeamIntroHeading for the Team & access page in the Atelier type style
Rules on every write
productOnly Atelier curators can approve a piece.orderThis 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.
- Order placed: reserve stock and tell the maker
When a row changes:
order created. Then: Look up product, then Update product, then Notify seller. - Payment provider callback (inbound webhook)
When a webhook arrives:
webhook payment-callback. Then: Record a row. - A successful payment marks the order paid
When a row changes:
payment created. Then: Look up order, then Update order. - Tell the maker an order is paid
When a row changes:
order updated, when status is paid. Then: Notify seller. - 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.
- Start the project
Use the button above, or ask your coding agent with the Appbricx MCP server connected (quickstart).
- Sign in as each role
The demo logins open each role's home. Change what you like in plain words or in the contract.
- 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.
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.{
"tool": "use_template",
"arguments": {
"slug": "atelier",
"name": "My Atelier"
}
}appbricx templates use atelier --name "My Atelier"




