Skip to main content

Stack, Phases, and Cross-Cutting Requirements

12. Technical stack

warning

This is the stack as specified in the original requirements document. The delivered implementation differs: the frontend is React 19 + Vite (not Next.js) with SCSS modules (not Tailwind), and the backend is Express + Prisma over Neon Postgres with its own JWT auth (not Next.js API routes with NextAuth and Supabase). See Architecture for what actually runs.

Frontend

TechnologyChoice
FrameworkNext.js 14 (App Router)
StylingTailwind CSS v3
AnimationsFramer Motion
3D / CanvasThree.js or Spline
IconsLucide React plus custom SVG
FormsReact Hook Form + Zod
StateZustand

Backend / API

TechnologyChoice
RuntimeNode.js (Next.js API routes)
ChatWebSocket (Socket.io) or the Vercel AI SDK
EmailResend or EmailJS
AuthNextAuth.js
DBSupabase (PostgreSQL)

Deployment

ServicePurpose
VercelFrontend hosting
SupabaseDatabase plus auth
CloudflareCDN plus DNS

Delivery phases

Phase 1 — landing page (MVP)

  • Base Next.js project structure
  • Design system (colours, fonts, components)
  • Hero section (#hero)
  • Vertical navigation
  • Features section (#features)
  • Pricing section (#pricing)
  • FAQ section (#faq)
  • Footer plus download section

Phase 2 — content sections

  • All Services (#application)
  • Road Map (#roadmap)
  • Collaboration & Partners (#collaboration)
  • MVP Demo section (#demo)

Phase 3 — interactivity

  • Interactive Demo section (#interactive)
  • Marketplace (#marketplace)
  • Agent detail page (/agent/[id])
  • Chat demo (#chat-demo)

Phase 4 — settings (user cabinet)

  • Settings shell — an overlay/modal with the horizontal tab menu
  • Profile tab (/settings/profile)
  • Notifications tab (/settings/notifications)
  • Plans tab (/settings/plans)
  • Privacy tab (/settings/privacy)
  • Data tab (/settings/data)
  • System Settings tab (/settings/system)
  • Delete Account modal
  • Payment History modal

Phase 5 — auth and backend

  • Sign In / Sign Up flow
  • User dashboard
  • Payment integration (Stripe)
  • WebSocket chat with the AI

Responsiveness

BreakpointWidthBehaviour
Mobile< 768pxSingle column, bottom nav
Tablet768–1024pxTwo columns, compact navigation
Desktop> 1024pxFull layout, right nav rail

SEO and metadata

  • <title>: AMADEQ — AI Tutor That Feels Like a Real Teacher.
  • <description>: personalized learning with real-time AI avatars.
  • OG image: a Hero screenshot.
  • Structured data: Course, Product, Organization.
  • Sitemap: auto-generated by Next.js.

Accessibility (a11y)

  • WCAG 2.1 AA.
  • Keyboard navigation for every interactive element.
  • ARIA labels for icons and buttons without text.
  • Contrast ratio ≥ 4.5:1 for text.
  • Alt text for every image.

Open questions

#QuestionPriority
1Video avatar format: an Unreal Engine stream or pre-rendered?Critical
2Marketplace API: our own backend or a third party?High
3Launch countdown: take the date from a CMS or hard-code it?Medium
4QR code: static or dynamic?Low
5Languages: localization through i18n or separate subdomains?Medium