Alexa Psychologist
Multilingual practice site with a hardened lead pipeline
A trilingual (RU / EN / DE) landing site for a psychology practice, with an interactive self-assessment quiz and community-event registration. The frontend is a fully static Next.js export on Vercel; submissions flow to a small Fastify API on Render that proves visitors are human, rate-limits abuse, stores leads in Postgres and pings the practice by email and Telegram.
- My role
- Architecture, full-stack build, infrastructure & security model
- Stack
- Next.js (static export)Tailwind CSSVercelFastifyTypeScriptPrismaNeon PostgresCloudflare TurnstileJWT (jose)ResendTelegram Bot APIRender
Architecture
overview
Highlights
- Zero-server frontend: every page prerendered, served from the CDN in three languages, content editable without touching JSX.
- Two-layer abuse protection: invisible Turnstile challenge + Postgres-backed sliding-window rate limit keyed on hashed IPs (no raw IPs stored).
- Short-lived, single-scope, single-use JWTs between challenge and submit, so a stolen token is worthless after one use or five minutes.
- Passwordless admin dashboard via emailed magic links, with lead status tracking (new → client / closed).
Curious how this would fit your team?
Ask me anything about Alexa Psychologist — I reply personally.