Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Firebase Extensions Demo

A demo ecommerce application showcasing Firebase Extensions and other Firebase products.

To learn more about this project see the documentation or the video below:

Build your retail app with Firebase extensions

Project structure

  • /website
    • Source for the React web application.
  • /functions
    • Source for Firebase Cloud Functions used by this project.
  • /tools
    • Scripts/tools such as Stripe product importing and Cloud Firestore rules.

Local development


Running locally

yarn dev

Deploying to Firebase Hosting

yarn deploy

Importing product data into Stripe

cd tools
yarn stripe:import-products

Note: this script requires you create a tools/.env file with your STRIPE_SECRET_KEY set in it.

Deploy Firestore rules

cd tools
yarn firebase:deploy-firestore-rules

Technologies Used

  • ️‍🔥  Firebase
  • 💳  Stripe Checkout
    • Checkout creates a secure, Stripe-hosted payment page that lets you collect payments quickly.
  • 📦  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.