finds.dev← search

// the find

expo/expo-server-sdk-node

★ 1,016 · TypeScript · MIT · updated May 2026

Server-side library for working with the Expo push notification service using Node.js

Official Node.js SDK for sending push notifications through Expo's push service. Handles batching, chunking, and receipt polling which are the annoying parts of working with Expo's API. Aimed at backend developers building mobile apps with Expo/React Native.

- Chunking and batching helpers are genuinely useful - Expo's API has payload size limits and this handles that bookkeeping for you

- TypeScript types are included and the codebase is small enough (~2 files of substance) that you can read the whole thing quickly if something breaks

- Receipt handling is documented clearly in the README with the two-phase ticket→receipt flow explained, which trips up most people the first time

- Actively maintained by the Expo team with renovate auto-updating deps and a real CI pipeline

- No retry logic or backoff built in - if Expo's service returns a 5xx or rate limit, you're on your own to implement that

- Receipt polling is your problem entirely; the SDK gives you the tools but there's no scheduler or queue abstraction, so you'll write the same cron job boilerplate everyone else writes

- The token validation via isExpoPushToken is a regex check only - it won't catch tokens that have been invalidated server-side until you go through the full send+receipt cycle

- Error handling in the README examples uses console.error as placeholders, which will mislead junior devs into shipping code that silently swallows DeviceNotRegistered errors instead of cleaning up stale tokens

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →