Design proposal for uniquedesigns.io/admin. Standalone HTML, sample data, nothing wired. Start here.
UUnique DesignsAdmin
Shop ↗adtrombley@gmail.com Sign out
uniquedesigns.io/admin · design proposal · Sat 13 Sep 2026

An order is a print job before it is a parcel.

A private back office for a shop that prints one cork at a time on one printer. It takes orders from uniquedesigns.io, Amazon and Etsy, checks each against the spools on the shelf, sequences the day's printing so the AMS is reloaded as rarely as possible, and follows every parcel back to the payout it lands in. It looks like the shop because it is the shop's tokens, and it should sit beside the Figma checkout frames without a seam.

Walk it from Today →Start at sign-in

The idea in one line of boxes

Order arrivesStripe webhook, or an Amazon / Etsy file until their APIs are approved.
Shelf checkEvery spool the cork uses: on the shelf, or the order is blocked with the reason.
Print queueJobs grouped by AMS loadout, earliest ship-by first inside a loadout.
PrintSliced and started in Bambu Studio. The admin reads the printer; it never drives it.
Pack and shipSlip without prices, label, tracking — then confirm on the channel.
PayoutStripe automatically; Amazon and Etsy from their reports, until the APIs.

The screens

Every order in the list opens its own page, every product too, and every order has a packing slip — so the proposal can be walked end to end, not just admired. The thirteen below are the ones to judge.

Three channels, handled honestly

uniquedesigns.ioAmazonEtsy
Orders inStripe webhook. Automatic, live today.Unshipped-orders report, imported. SP-API later.Orders CSV, imported. API later.
Shipment outAdmin emails tracking.Confirm in Seller Central, inside the handling window.Mark shipped on Etsy with tracking.
Buyer contactEmail, direct.Buyer-Seller Messaging only. 24h.Etsy Messages only.
IdsCheckout sessionAmazon order idReceipt id
Fees2.9% + $0.3015% referral + plan$0.20 + 6.5% + 3% + $0.25
PayoutRolling, ~2 business daysEvery 14 days, reserve heldSchedule set on Etsy
Approval frictionNone. Roll the key; use a restricted one.Professional account, developer registration reviewed by Amazon — weeks, sometimes.API key; personal access in days, commercial access reviewed.

Fee figures are the channels' published US rates at the time of writing, for illustration. The product uses what each channel reports and never a formula.

What is assumed, and should be confirmed

Auth

One user. Cloudflare Access with a single allowed Google account is the door; the password form is the fallback. Sessions a week long. No roles.

Where it runs

A Cloudflare Worker with D1, deployed separately from the Pages shop, as site/wrangler.toml already states. The admin can never take the shop down.

The printer

Read-only over MQTT in LAN mode, unofficial. Jobs are started in Bambu Studio by hand. If that is not wanted, the "on the printer" card is removed and nothing else changes.

Stock is spools

Counted in on delivery, decremented per finished job in whole spools, not grams. A spool on order or in a cart is not on the shelf.

Print times

Stored per product from Bambu Studio's estimate when the file is sliced. The times shown here are placeholders.

Website shipping promise

There is none today. The channels page asks for one; the queue uses it for ship-by on web orders once set.

Marketplaces and the marks

Listing collegiate marks on Amazon or Etsy without a CLC licence invites a takedown. The licensing question in CLAUDE.md is a precondition for two of the three channels.

Labels

Bought through a label API (EasyPost / Shippo class) that returns the tracking number; buying at the counter and pasting is the fallback. Not chosen.

Sales tax

Marketplaces remit their own. The website needs Stripe Tax switched on. Flagged, not designed.

Not designed here

Checkout, cart, the customer's own account pages — frames 13 to 26 in "Shopping Ecommerce Website UI" — are Austin's and untouched. The admin uses the same header, buttons, badges, table rhythm and dark footer so it reads as the same family, and nothing in it repeats what those frames already decide.

What is real and what is sample

Real

  • The 22 corks, names, images and filaments, from the built shop and the colour register.
  • The 21-spool register and its stock: four counts from the 2026-09-09 Bambu order, Dark Blue sold out, the rest on order or in a cart.
  • That 22 products are live on the website and 0 on Amazon or Etsy.
  • The channels' rules, ids and published fee schedules.

Sample

  • All twelve orders, their customers, cities, dates and states.
  • Every tracking number, session id, payout and settlement.
  • Print times and printer progress.
  • The messages.

The bar at the top of every screen says so.

Files

All in ~/Downloads/uniquedesigns-admin/. Open index.html and click. Everything is generated by _build.py from one set of data, so a change to an order or a spool shows on every screen that mentions it.

index.htmlthis page
login, dashboard, orders, queue, ship, filament, products, channels, payouts, messages .htmlthe ten screens
order-UD-10xx.html × 12one per sample order
slip-UD-10xx.html × 12packing slip per order
product-<slug>.html × 22one per cork
img/the 22 catalogue renders, copied from the shop
_build.pythe generator — data, CSS, every page