finds.dev← search

// the find

rwieruch/nextjs-firebase-authentication

★ 653 · TypeScript · updated Sep 2022

Next.js + Firebase Starter

A Next.js and Firebase codebase for a paid course platform, built by Robin Wieruch around his own courses. It covers sign-up, sign-in, email and password changes, protected routes, a GraphQL API, and Stripe and PayPal checkout. It is a useful reference for how one real product fits together, but it is not a drop-in auth starter.

The auth flows are complete rather than demo-level: sign-in, sign-up, sign-out, email change, password change and password reset all go through GraphQL resolvers. Access rules sit in one place as resolver middleware (isAuthenticated, isAdmin, isPartner, isFreeCourse), which is easier to audit than checks scattered across pages. The test setup is real, with Jest, React Testing Library and Apollo mocks alongside most screens. The Stripe webhook and PayPal checkout are working payment code, which most starters leave out.

The repo carries the author's product logic: coupons, a partner and affiliate program, ConvertKit, Revue, Slack and S3 all show up in the env list and services. Anyone who only wants auth has a lot to delete first. The description says 'Starter' but the README is titled 'My Course Platform', which sets the wrong expectation. The last push was September 2022, so Next.js, Firebase and Apollo are all behind, and the Travis badge points at travis-ci.org, which has been retired. The setup needs keys for Firebase, PayPal, Stripe, Sentry, Revue, Slack, ConvertKit, S3 and a database before anything runs, and several of those, including Revue, Slack and S3, get no setup notes.

View on GitHub → Homepage ↗

// 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 →