Coder Social home page Coder Social logo

rafaelzasas / intro-to-firebase Goto Github PK

View Code? Open in Web Editor NEW
18.0 4.0 11.0 1017 KB

Sample Code for Intro to Firebase Workshop hosted by Developer Student Clubs

Home Page: https://ecommerce-with-firebase-a7af6.web.app/

License: MIT License

CSS 1.79% HTML 60.24% JavaScript 37.96%
firebase dsc series website ecommerce-website ecommerce-application google developer-student-clubs

intro-to-firebase's Introduction

Hello World

Raf's Profile Views

My name is Rafael Zasas and I'm a Full-Stack developer.

  • ๐Ÿ”ญ Currently working with Angular, ReactJs, NextJs (all TypeScript) and FastApi (Python).
  • ๐ŸŒฑ Currently learning GCP
  • ๐Ÿ‘ฏ Iโ€™m looking to collaborate on anything fun
  • โšก Fun fact: I was on the South African National Swimming Team

๐Ÿ‘‰ ๐Ÿ‘ˆ How to Contact me

โค๏ธ Things I like to do

  • ๐Ÿ“ฑ ๐Ÿ’ป Create mobile and web applications
  • ๐ŸŽด Create user interfaces
  • ๐Ÿ’ก Experiment new technologies and tools
  • ๐Ÿ‘จ Help people and talk about tech

๐Ÿ“ƒ My Stats

intro-to-firebase's People

Contributors

andreyden avatar rafaelzasas avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

intro-to-firebase's Issues

Fix Broken Profile Image ๐Ÿฉน

Currently if a signed in user doesn't have an image associated with the account, the profile page's image will be broken.
This can be fixed by checking to see if the user.displayImage function returns null or not.
A static image in assets/ can be used or you can pull an image from Firestore.

Product CRUD

  • Products should be associated with their creators
  • Only creators and admins should be able to edit a product
  • Create
  • Update
  • Delete

Firebase Functions

  • Firestore triggered function
    • Sync cart products with real ones
    • Send an email with purchase confirmation
    • Update Inventory size
  • HTTP Seeder function
  • An email function (possibly with an extension)
  • Analytics triggered function
    • An analytics event triggered when a user leaves the site with stuff in the cart
    • A function that listens for that event and sends an email
    • Only send the email if the cart was left untouched for more than a day

Email authentication

  • enable email authentication in the Firebase console
  • add email authentication as the main sign-in method
  • possibly use Firebase UI for authentication views
  • move Google auth as a secondary sign-in method

Google authentication

  • enable Google auth in the Firebase console
  • implement Google auth to be the main sign-in method

Update Document to send out

Need to complete info docs for Event Details

  • Firestore #2

  • Analytics + Perf Monitoring

  • Functions + Extensions

  • Remote Config & AB Testing

Analytics

  • Create Cart & Functionality
  • Trigger analytics event for adding to cart
  • create dummy purchase functionality
  • link to built in analytics event for purchase
  • perf-mon for loading times / category
  • add event triggers for category views and produt views
  • add event triggers for login/sign up and sign out
  • event for user exiting site

Admin dashboard

  • Only visible to registered users with permissions.admin of true
  • Displays a list of all users
  • Toggles for each users' permissions
  • Save button to commit the changes

Analytics triggered functions

  • An analytics event triggered when a user leaves the site with stuff in the cart
  • A function that listens for that event and sends an email
  • Only send the email if the cart was left untouched for more than a day

Product search

  • Search bar to enter the query
  • List of product results that contain the search term in their names
  • Sort products by name
  • Sort products by price
  • Filter products by certain type

O-Auth Sign in with multiple providers

If you try sign in using Google OAuth Provider and then later on try logging in using GitHub you are prompted with an error message from Firebase.
You can fix this by implementing some logic according to the error.code function. This is in the error handling of our Sign In function.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.