What we built
- EIP-712 signed score updates, so the contract verifies the oracle without trusting the transport.
- Multi-provider email and SMS verification with automated one-time-password flows.
- ERC-20 payment path for the $CREDIT token wired through the scoring contract.
- Clean Architecture split across a Next.js front end and a NestJS service so the scoring rules stay testable.