Copy ┌──────────────────────────────────────────────────────────────────┐
│ Your Next.js App │
│ │
│ ┌─────────────────┐ │
│ │ Login Page │ User clicks "Sign in with Humanity" │
│ │ (Frontend) │ │
│ └────────┬────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────┐ ┌──────────────────────┐ │
│ │ /api/auth/ │────────▶│ Humanity Protocol │ │
│ │ login │ │ SDK │ │
│ │ │◀────────│ (OAuth + Presets) │ │
│ └─────────────────┘ └──────────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────┐ User authorizes │
│ │ /callback │ on Humanity Protocol │
│ │ (OAuth return) │ │
│ └────────┬────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────┐ │
│ │ Extract User Data: │ │
│ │ • Profile (email, wallet) │ │
│ │ • Social connections (LinkedIn, etc.) │ │
│ │ • Travel preferences (Query Engine) │ │
│ └────────┬────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────┐ ┌──────────────┐ │
│ │ Save User │────────▶│ MongoDB │ │
│ │ + Signals │ │ │ │
│ └─────────────────┘ │ • Users │ │
│ │ │ • News │ │
│ │ │ • API Logs │ │
│ │ └──────────────┘ │
│ ▼ │
│ ┌─────────────────┐ ┌──────────────┐ │
│ │ Fetch News │────────▶│ GNews API │ │
│ │ (Cron Job) │◀────────│ │ │
│ └─────────────────┘ └──────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────┐ │
│ │ Personalize Feed: │ │
│ │ • Match articles to user signals │ │
│ │ • LinkedIn → Professional content │ │
│ │ • Twitter → Social/trending │ │
│ │ • Discord → Community │ │
│ │ • GitHub → Tech │ │
│ └────────┬────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────┐ │
│ │ Feed Page │ Display personalized articles │
│ │ + Dev Console │ Show API logs │
│ └─────────────────┘ │
│ │
└──────────────────────────────────────────────────────────────────┘