How it runs

Which technologies does one request pass through?

The browser only renders the interface. Every AI and database call happens on the backend, so no key ever reaches the browser. Pick a journey and follow the data through front, middle and backend.

Front

Vercel

Next.js 16React 19TypeScriptTailwind CSS v4Next API Route

Middle

Render · Singapore

FastAPIPython 3.12Azure OpenAIAzure AI SpeechPyMuPDFopenpyxl

Backend (database)

Supabase

PostgreSQLpgvectorSQL Migrations

CI: GitHub Actions (pytest + frontend type check) · every push to main deploys to Vercel and Render

  1. 1

    Front · Next.js

    Sales uploads an Excel questionnaire

    The form is validated, then the backend API is called over HTTPS.

  2. 2

    Middle · FastAPI

    Access code and rate limits are checked

    openpyxl reads the questions and a request is created.

  3. 3

    Middle · Azure OpenAI

    Each question becomes a vector

    text-embedding-3-large produces a 3072-dimension vector.

  4. 4

    Backend · Supabase

    Data is fetched

    Top-K passages from pgvector, or certificate and KPI rows from PostgreSQL.

  5. 5

    Middle · gpt-4o-mini

    An answer is drafted with sources

    Results are saved to PostgreSQL for the sustainability team to review.

  6. 6

    Front · Next.js

    My Requests shows the progress

    Once reviewed, the filled-in Excel can be downloaded.