Serverless Angular PWA using some Firebase features and Google APIs
Website: https://appointments-pwa.firebaseapp.com
- Email/Password
- Data structure
appointments/{appointmentId}: {
title,
body,
date,
author: {name, email, photoURL},
attendees: [{name, email, photoURL}, ...]
},
users/{uid}: {
name,
email,
photoURL
}
One function to send Push Notifications. (src)
- Listens for created appointments in Firestore (
onCreate
trigger) - Reads all attendees of the appointment that are actual users (not google contacts)
- Sends a Notification to the users via their fcmToken and the client side angular service will do the rest
🔥 Hosting
Deploying the build with firebase deploy
or from travis
The Google login with their api client includes scopes for following Google APIs
- People API (
/contacts/readonly
) - Google Calendar API (
/auth/calendar
)
Clone the repository
git clone https://github.com/KaindlJulian/appointments-pwa.git
Install dependencies
npm install
Development server
ng serve --open