Onboarding walkthrough
Six steps. No forms for forms' sake.
We ask once, deeply, and then we stop asking. Every answer feeds a structured schema that the matching engine uses forever. This page shows what onboarding covers in the real product, with examples from the demo candidates.
1. Identity mode
Real name, pseudonym (Farcaster / ENS), or wallet-first. We treat all three as equal citizens. Pseudonymous candidates should not be second class.
Demo candidates: 0xHaru (pseudonym), Priya Chen (real), Marco Ferrari (real).
2. Verifiable signals
Optional: link GitHub, Farcaster, LinkedIn, a public wallet, or upload a PDF offer letter (your last comp anchor, never shared, used only to calibrate your comp floor).
Seeded candidates include a mix of LinkedIn and GitHub URLs; offer upload is simulated.
3. Preferences & hard filters
Comp floor. Jurisdiction constraints. Remote policy. Visa status. Regulated OK or not. Tech stack. Functions & domains of interest. Free-form dealbreakers.
E.g. Priya's dealbreakers: ['stage:seed', 'unregulated']. These short-circuit the match.
4. Weights
Four sliders: comp, domain fit, team quality, token upside. These tune the structured score and feed the LLM judge.
0xHaru weights: token=0.9. Priya weights: team=0.9. Marco weights: comp=0.9.
5. 20-job calibration swipe
Fast-forward cold start: we show you 20 synthetic job cards across the space. Thumbs up / down. This seeds your preferences with same-day signal.
Not rendered in this demo, but the same swipe state updates weights + dealbreakers.
6. Digest cadence
Weekly by default. With precision floor on, you'll sometimes get zero matches. That's correct behavior, not a bug.
See /email-preview for a rendered weekly digest and a 'no matches' week.