🍕 Viva Pizza: Making a secure storefront (pizza delivery) on Coda

This has been a successful exploration of how to make a secure storefront + production management doc using:

  • a sandboxed published doc for placing an order
  • a private back-office doc for processing and managing orders and the source-of-truth database

and Coda Forms to connect the two.

:point_up_2: Place an order, wait for an email, watch the video :point_down:

23 Likes

P.S. This exploration is very interesting for another reason. If I could build a cart, one could build a Typeform replacement, an interface with any sort of conditional logic to collect input, and send it to the private doc the same way I did it with the pizza orders.

1 Like

Hey @Paul_Danyliuk ,

This is really built so nice - nice looking, logical, clean, expandable…

I am wondering about one aspect though: this doc is in play mode, which is obviously good for this demo. But when you would actually use this for “your” pizza business, what kind of mode would you use? You would want non-coda users to access this doc as well? Maybe I a overlooking something, but I don’t see it (yet).

Greetings,
Joost

Of course — this is just a storefront, a landing page for anyone to collect an order using the interface I built for them, and submit it in a form. It is intentional that the doc is a sandbox. And I don’t need people’s logins to order pizza — as long as they specify their phone number and delivery address (an email address in this particular demo) and I know how to contact them and where to deliver the pizzas, I couldn’t care enough if they have an account or not. On the contrary, this is less friction for people.

All the processing is done on the backend doc that’s not shared with any of the customers. This is proper frontend/backend separation here.

Think of the @viva-pizza doc as a Typeform basically.

1 Like

Hey Paul,

Thank you for clarifying that. You put a tremendous amount of work in this ‘demo’ and you have stretched once again what can be done with Coda. Thanks for sharing and showing what’s possible.

I wasn’t aware one can use a form to submit real data even when the doc is in playmode, one more eyeopener.

Greetings, Joost

1 Like

It’s an embed, so yeah, it’s just like a form opened by itself in a new tab

1 Like

This is an amazing doc :partying_face: :star_struck: :grin: !

Thank you so much for building and sharing it @Paul_Danyliuk :raised_hands: !

I’m going to keep it in mind for my future published docs as in terms of UX this is just perfect :raised_hands: ! (and UX is still something I need to work on :blush: )

Congratulations Paul :partying_face: :raised_hands: !!!

2 Likes

@Paul_Danyliuk Hello, Paul , Thanks for sharing. this is an amazing doc.

I would like to know if i could buy it or access it anywhere? I would love to have POS for my personal doc

Hey @Korn_Tris!

TBH both docs are probably public and copyable. You can copy the frontend doc right away from the link, and the backend doc should be copyable as well (you get the link to it after you place an order and receive an email). So, no fee on that as long as you’re able to set it up on your own.

If you need my help setting it up for you, I do consulting at an hourly rate. I have a lot on my plate these days so I’d probably relay the gig to my partner Artem.

If you can manage it on your own but still would like to leave a tip, consider subscribing to my Patreon :slightly_smiling_face:

Here’s a real use case: a doc I built for a local refugee relief center uses this mechanic.

(from ~1:37:30):

1 Like