Kara's Coffee is a demo application built using a collection of technologies - most importantly Firebase!
These docs explain how the main aspects of the application integrate with Firebase, including Firebase Extensions.
Although the application as a whole demonstrates an e-commerce website, there are also individual aspects of it described in more detail throughout these docs:
- Syncing products using the Stripe Extension
- Creating an instant search experience with Algolia
- Building user shopping carts with Firestore
- Displaying filterable products using Firestore Queries
- Enabling fast product listings using Data Bundles
- Detecting toxic user reviews using the Perspective Toxicity Extension
- Integrating with Stripe Checkout
- Validating user addresses and handling shipping rates
️🔥 Firebase
-
- This function adds a new document to the
mail
collection on new user creation - this collection is listened to by the Firestore Send Email extension and sends a welcome email to the new user.- These emails are not actually processed on the hosted live demo website.
- This function adds a new document to the
-
- This function triggers when a new customer payment has been created and sends an initial order update SMS to the user (if they've set up a
phone number on their account - entering a user phone number is disabled on the hosted live demo website) via
the Twilio Send Message
extension by writing to the
messages
collection on Cloud Firestore.
- This function triggers when a new customer payment has been created and sends an initial order update SMS to the user (if they've set up a
phone number on their account - entering a user phone number is disabled on the hosted live demo website) via
the Twilio Send Message
extension by writing to the
-
- This scheduled function deletes all user data every 24 hours - it is useful only for the purpose of this demo.
- Delete User Data
- Automatically delete user data when a Firebase user is deleted.
- Firestore Bundle Server
- See enabling fast product listings using Data Bundles to learn more.
- Firestore Send Email
- Sends a welcome email upon signup.
- Firestore Perspective Toxicity
- Validates review comments provided by customers to ensure that they are non-toxic, e.g. insults & profanity detection.
- Trigger Email
- Algolia - Firestore Algolia Search
- See creating an instant search experience with Algolia to learn more.
- Stripe - Firestore Stripe Payments
- See the following pages to learn more:
- ShipEngine - Calculate Shipping Rates
- See validating user addresses and handling shipping rates to learn more.
- ShipEngine - Purchase Labels
- ShipEngine - Validate Address
- See validating user addresses and handling shipping rates to learn more.
- 💳 Stripe Checkout
- Client library for handling checkout payments.
- 📦 ShipEngine
- ShipEngine’s APIs help brands, ecommerce platforms, 3PLs and others save time and money on shipping.
- 🔍 Algolia Search
- Enables developers to build next generation apps with composable APIs.
- ⚛️ React
- A JavaScript library for building user interfaces.
- ⚡️ Vite
- Vite is a build tool that aims to provide a faster and leaner development experience for modern web projects.