Skip to content

Pastry shop, Los Angeles

Classic Le Palais Pastry

An order and production system for a Los Angeles pastry shop, live for its front desk and its kitchen.

Services
  • App or CRM
  • Automation
Stack
Next.js, Supabase, Fly.io, Stripe, Resend, Twilio, GitHub, Backups
Updated
The kitchen board for one day: a pickup order shown as a card with its time window, its items and a checkbox beside each item.
The kitchen board. Each order of the day is a card, and the kitchen ticks items off as they are made. Shown with sample data.

Context

Classic Le Palais Pastry is a pastry shop in Los Angeles. Its front desk takes orders from a single custom cake to a standing order that repeats every week, and its kitchen turns the day's orders into a day of baking.

We built the system the shop takes those orders in. It is one app with a login for each job (owner, front desk, kitchen), and each login opens on the screens that job needs.

Problem

A pastry order carries more detail than it looks. The items, the custom cake notes, pickup or delivery, the time and the deposit all have to reach the kitchen and the invoice exactly as the customer gave them.

The kitchen needs the same orders from another angle: not who ordered what, but how many of each item to make on a given day. Standing orders complicate it further, because they have to appear on the right days without anyone typing them in again.

The production board for one day, grouped into breads and rolls, pastries and cakes, and other, with how many of each item to make, how many are done and how many are left.
The production board adds the day's orders up by item, so the kitchen knows how many of each thing to make. Shown with sample data.

Approach

We started at the front desk. A new order is a short wizard built for a phone or a tablet: the customer, the items, the custom cake details, delivery or pickup, the date and time, the deposit, then a review of the whole order before it is saved.

From there the order shows up wherever someone needs it. The kitchen board lays out the day's orders as cards, the production board adds them up into how many of each item to make, and status tracking tells the front desk what is ready to go.

The routine work runs on its own. Standing orders are generated on a schedule, deposits and payments go through Stripe's hosted checkout, invoices come straight from the orders, and customer messages go out by email, with text messages on the shop's own number.

The accounts that matter are in the shop's name, from the Fly.io hosting to Stripe and the text number. The database is backed up every night, and the restore has been tested, not just assumed.

The sign-in screen on a phone: the Classic Le Palais Pastry logo above the email and password fields.
Sign-in on a phone. Every screen was designed at phone size first.

Outcome

The app is live for the shop's staff and kitchen. Each person signs in to the screens for their job, and the owner has the reports and the invoices in one place.

Its staff journeys also ran through the QA chassis, the testing rig in our lab work, at phone and desktop sizes.

Staff roles, each with its own screens
3

Stack

  • Next.jsthe app, designed at phone size first
  • Supabasedatabase, auth, storage and scheduled jobs
  • Fly.iohosting, in the client's own account
  • Stripehosted checkout, in the client's own account
  • Resendemail
  • Twiliotext messages, in the client's name
  • GitHuba private repository
  • Backupsnightly, with a tested restore

Tell us what you are working on.

A few lines about your business is enough to start. We reply with questions and a plain next step.