This repository contains follow-along steps and resources for the "Twilio Forge: Access Granted" workshop, focused on building a user verification onboarding flow using Twilio Lookup, Verify, and Passkeys APIs.
The RUNBOOK.md is a step-by-step guide split into sections:
| # | Section | What You'll Build |
|---|---|---|
| 1 | Setup | Twilio credentials, Verify service, local dev environment |
| 2 | Lookup Routes | Phone validation, line type intelligence, SMS pumping risk |
| 3 | Phone OTP Routes | SMS/voice verification send and check |
| 4 | Email OTP Routes | Email verification send and check (optional) |
| 5 | Passkeys | WebAuthn passkey registration and authentication (optional) |
Start with the RUNBOOK.md for an overview and prerequisites.
This repository is structured for hands-on learning:
./build/directory: Scaffolded files with TODO placeholders where you'll implement the Twilio API calls./final/directory: Complete, working implementation for reference./postman/directory: Postman collection and environment for testing Twilio APIs directly
This project uses npm workspaces. Running npm install in the root directory installs dependencies for both build/ and final/.
| File | Purpose | Edit? |
|---|---|---|
build/lookup.js |
Twilio Lookup v2 API routes | Yes |
build/verify/phone.js |
Phone OTP send and verify routes | Yes |
build/verify/email.js |
Email OTP send and verify routes | Yes |
build/verify/passkeys.js |
Passkey registration and authentication | Yes |
build/server.js |
Express server bootstrap | No |
build/lib/twilio-fetch.js |
Fetch wrapper with Twilio Basic auth | No |
build/lib/errors.js |
Shared error response helper | No |
build/public/ |
Multi-page UI (phone, email, passkey, dashboard) | No |
npm install # Install all dependencies
npm start # Run the build version (your workshop code)
npm run start:final # Run the complete reference implementation