diff --git a/backend/main.py b/backend/main.py index efd1ffa..3af7db6 100644 --- a/backend/main.py +++ b/backend/main.py @@ -316,6 +316,22 @@ return FileResponse(FRONTEND_DIR / "how.html") +@app.get("/free-iq-test") +def free_iq_test_page(): + return FileResponse(FRONTEND_DIR / "free-iq-test.html") + + +@app.get("/robots.txt") +def robots_txt(): + return FileResponse(FRONTEND_DIR / "robots.txt", media_type="text/plain") + + +@app.get("/sitemap.xml") +def sitemap_xml(): + return FileResponse(FRONTEND_DIR / "sitemap.xml", + media_type="application/xml") + + @app.get("/api/me") def api_me(request: Request): sess = _session_from(request) diff --git a/frontend/free-iq-test.html b/frontend/free-iq-test.html new file mode 100644 index 0000000..6684a0e --- /dev/null +++ b/frontend/free-iq-test.html @@ -0,0 +1,71 @@ + + +
+ + ++ 40 original questions — sequences, matrices, verbal logic, spatial + reasoning. About 25 minutes, completely free, no ads. At the end you + get a score signed with a cryptographic key: share a link, and anyone + can check it's really yours — no screenshot needed. +
+ Take the free test → ++ Login (X or Instagram) binds the result to your account — one active + result per account, so nobody can cherry-pick attempts. +
++ Number and letter sequences, matrix patterns, verbal analogies, + spatial rotation — 40 tasks across four categories, calibrated so the + average lands near IQ 100. Results are preliminary-calibrated until + 500 completions; the percentile line updates as more people take it. +
++ Every other online IQ test gives you an image anyone can edit in + Paint. A VerIQ link re-checks the signature server-side on every view + — if it says valid, the score was issued by VerIQ and never + altered. Read + how verification works. +
+