About

How GeneTranslate works

GeneTranslate is an educational tool that converts clinical genetic-test PDFs into plain-language summaries you can bring to your genetic counselor. It is local-first, ephemeral by design, and intentionally narrow in scope: explanation, never diagnosis.

The pipeline

1. Extract the PDF

We parse the uploaded PDF in memory using pdfjs-dist. The file never touches disk and is discarded as soon as the request returns.

2. Detect the lab and parse variants

Lab-specific parsers identify Invitae and GeneDx report layouts and pull out gene, HGVS notation, ACMG classification, condition, inheritance, and zygosity. Unknown layouts fall back to manual entry.

3. Enrich with ClinVar

Each variant is looked up against NCBI ClinVar via E-utilities (esearch + esummary) so the LLM has current public evidence to ground its explanation.

4. Local LLM analysis

A model running on your machine through Ollama (default qwen2.5:7b-instruct) writes a plain-language summary, per-variant explanations, and counselor questions. No cloud LLM calls.

5. Safety scan

Before anything reaches the page, the output is scanned for prohibited content: diagnostic claims, treatment recommendations, prognostic statements. Findings in high-risk genes (BRCA1/2, Lynch genes, TP53, etc.) trigger an elevated mode that hides quantitative risk and routes you back to a counselor.

Under the hood

Frontend
Next.js 16 (App Router) + React 19 + Tailwind v4
PDF parsing
pdfjs-dist running in the Node runtime
LLM
Ollama (default qwen2.5:7b-instruct), JSON mode
Evidence
NCBI ClinVar via E-utilities (esearch + esummary)
Storage
None server-side. sessionStorage on the client.
Email
Resend, optional. Addresses are not retained.

What GeneTranslate does not do

  • ×Provide a diagnosis, prognosis, or medical advice of any kind.
  • ×Recommend screening intervals, prophylactic surgery, or any treatment.
  • ×Quote quantitative risk percentages for high-risk genes.
  • ×Replace a board-certified genetic counselor or physician.
  • ×Send your data anywhere — the LLM runs locally on your machine.