Skip to content
G
← All projects

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

HTTPSwidgetPOSTsiteverifychecksavenotifysessionVisitorBrowser · RU / EN / DEStatic siteNext.js export · VercelTurnstileCloudflare · bot checkAPIFastify · RenderRate limiterSliding window · hashed IPPostgresNeon · PrismaNotificationsResend · TelegramAdmin dashboardMagic-link login
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.