Back to Engineering Notes
Professional ExperienceEngineering Note

9. Push Notifications

I use FCM tokens and Expo tokens to send push notifications to mobile or web applications.

🧠 FCM Token & Expo Token (Push Notifications)

I use FCM tokens and Expo tokens to send push notifications to mobile or web applications.


🎯 Simple Idea

To send a notification to a specific device:

👉 each device must have a unique token

FCM Token → used with Firebase Cloud Messaging
Expo Token → used with Expo (React Native)

🧩 FCM Token

generated by Firebase SDK on the client
uniquely identifies a device/app instance

Used for:

Android, iOS, and web push notifications

Flow:

1. app requests permission

1. device receives FCM token

1. token is sent to backend

1. backend sends notification using that token


🧩 Expo Token

generated by Expo Notifications API
wraps FCM/APNs internally

👉 easier setup for React Native apps using Expo

Flow:

1. app gets Expo push token

1. token sent to backend

1. backend sends notification via Expo service


🧠 Why I Use This

target notifications to specific users/devices
support real-time alerts (messages, updates)
improve user engagement

⚖️ Tradeoff Awareness

tokens can expire or change → must update regularly
need to manage multiple tokens per user (multiple devices)
requires handling notification permissions

📌 Practical Rule

> always store and update device tokens correctly


💬 Summary

I use:

FCM Token → direct push notification system
Expo Token → simplified layer for mobile apps

👉 to deliver reliable and targeted notifications 👍