Project Info
Inspiration
Artificial intelligence has transformed how people access and consume information. Students use AI to assist with assignments, researchers use it to accelerate literature reviews, and content creators rely on it to generate educational content at scale. However, the same systems that increase productivity can also generate fabricated citations, unsupported claims, and scientifically inaccurate information that appears highly convincing. We were inspired by a simple but important question: How can users trust the information they receive in an AI-driven world? Existing academic tools are excellent at helping researchers discover papers, but they are not designed to verify the information people are already consuming. A student watching a YouTube lecture, a journalist reviewing a report, or an educator grading assignments does not want to manually search through hundreds of research papers. They simply want to know whether a claim is supported by credible scientific evidence. This challenge motivated us to build ASET (Academic Safety and Evidencing Truth), a platform that bridges the gap between information consumption and scientific verification. Our goal is to make evidence-based verification accessible, transparent, and practical for everyone. What it Does ASET is an AI-powered scientific claim verification engine that evaluates the credibility of information using evidence from over 1.2 million indexed peer-reviewed research papers. The platform accepts information from multiple sources, including direct text input, PDF documents, DOCX files, images, webpages, and YouTube videos. Once content is submitted, ASET automatically extracts factual claims, identifies the relevant scientific domain, retrieves supporting research, and generates a detailed verification report. Instead of simply providing search results, ASET analyzes the available evidence and produces a trust score, confidence assessment, supporting references, contradicting evidence, and a concise explanation of its findings. The platform is designed for students, educators, researchers, journalists, content creators, and everyday users who need a reliable way to verify scientific information before trusting or sharing it. ASET also includes a browser extension that allows users to verify claims directly from webpages without leaving their existing workflow. This transforms ASET from a standalone application into a browser-native trust layer for online information. How We Built It ASET was developed as a full-stack AI application that combines large-scale research retrieval with AI-powered reasoning. The frontend was built using React and Vite to create a responsive and intuitive user experience. The backend was developed using Node.js and Express and serves as the central orchestration layer for claim extraction, verification, retrieval, and report generation. To support large-scale scientific verification, we constructed a research corpus containing more than 1.2 million papers collected from trusted academic sources. These papers span multiple scientific disciplines including medicine, biology, chemistry, physics, engineering, computer science, and space science. The verification workflow consists of several stages: Claim Extraction Domain Identification Research Retrieval Evidence Analysis Trust Score Generation Verification Report Creation Large Language Models are used to analyze the retrieved evidence and determine whether a claim is supported, contradicted, or lacks sufficient evidence. The final result is presented in a transparent format that allows users to understand both the verdict and the reasoning behind it. To improve accessibility and usability, we also developed a browser extension that integrates directly with webpages, enabling real-time verification without disrupting the user's browsing experience. Challenges We Ran Into One of the most significant challenges was designing a system that could differentiate itself from traditional academic search engines and research discovery platforms. Many existing tools focus on helping researchers locate papers. Our challenge was fundamentally different: helping users verify information they are already consuming. This required us to rethink the user journey and build workflows centered around verification rather than discovery. Another challenge involved scaling retrieval across a research corpus exceeding one million papers while maintaining fast response times. Verification systems must provide results quickly enough to remain useful, particularly when processing documents containing multiple claims. Handling multiple content formats also presented technical difficulties. Text, PDFs, images, webpages, and videos all require different extraction and preprocessing techniques before claims can be analyzed consistently. Finally, one of our most important design considerations was transparency. We wanted users to trust the platform's conclusions, which meant presenting supporting evidence, confidence scores, and citations rather than producing opaque AI-generated answers. Accomplishments That We're Proud Of We are proud that ASET evolved from a simple scientific verification concept into a comprehensive evidence-based trust platform. Some of our key accomplishments include: Building a verification system powered by over 1.2 million indexed research papers. Supporting verification across multiple input formats including text, PDFs, images, webpages, and YouTube videos. Developing a browser extension that enables real-time verification directly within a user's workflow. Creating a scalable retrieval and verification pipeline capable of handling large scientific datasets. Designing transparent trust scores supported by evidence and citations. Expanding beyond a single scientific domain into a multidisciplinary verification platform. Achieving recognition as a Top 50 Finalist in the AWS AIdeas Competition. Most importantly, we built a platform that empowers users to make informed decisions in an era where information can be generated instantly but trust must still be earned. What We Learned Throughout the development of ASET, we learned that misinformation is not merely a technical challenge; it is fundamentally a challenge of trust. Users do not necessarily want access to more information. Instead, they want confidence that the information they already have is accurate and supported by credible evidence. We also learned that transparency is critical for AI systems operating in high-trust environments. Users are more likely to trust conclusions when they can see the evidence, sources, and reasoning process behind them. From a technical perspective, we gained valuable experience in large-scale information retrieval, AI-assisted reasoning, claim extraction, evidence synthesis, and designing systems that combine retrieval and generation in meaningful ways. Most importantly, we learned that building useful AI products requires focusing on real user workflows rather than simply showcasing advanced technology. What's Next for ASET Our long-term vision is to establish ASET as a universal trust layer for scientific information. Future development will focus on expanding our research corpus, improving verification accuracy, supporting additional languages, and introducing more advanced multi-agent reasoning workflows. We also plan to enhance browser-based verification capabilities and develop dedicated tools for educational institutions, researchers, and media organizations. As AI-generated content continues to grow across every industry, the need for trustworthy verification systems will become increasingly important. We believe ASET can play a significant role in ensuring that evidence remains at the center of how people consume, evaluate, and share information. Our mission is simple: transform scientific evidence into accessible trust for everyone.
ASET — Academic Safety and Evidencing Truth
AI-Powered Scientific Claim Verification Platform
What is ASET?
ASET stops AI hallucinations and misinformation by verifying scientific claims against 1.2M+ peer-reviewed papers across 8 domains — in real time.
The problem: 46% of AI-generated citations are fabricated. Students, teachers, journalists, and content creators unknowingly spread misinformation backed by fake research.
The solution: ASET verifies any claim — typed, uploaded, or from a YouTube video — against a pre-indexed database of peer-reviewed papers, returning a trust score and supporting evidence. When no local papers exist, ASET fetches from arXiv + PubMed in real time and permanently stores them — the database grows with every query.
Features
- Mode 1 — Single Claim: Type any scientific claim, verified in under 200ms
- Mode 2 — YouTube: Paste a YouTube URL — transcript extracted, every claim verified
- Mode 3 — Document: Upload PDF, DOCX, or image (OCR) — all claims identified and verified
- Multi-Agent Pipeline: 4 specialized agents (Research → Verification → Citation → Report) coordinated via Band Protocol
- Self-Growing DB: Fetches from arXiv + PubMed when no local papers found, stores permanently
- Paper Search: Search 1.2M+ papers by title/author/keyword — no login required
- 8 Scientific Domains: Space Science, Biology, Medicine, Chemistry, Physics, CS, Engineering + more
- 1.2M+ Papers: Pre-indexed with FTS5 for sub-200ms search
- Browser Extension: Highlight any text on any webpage and verify instantly
- Email OTP: Password reset via Nodemailer
- Citation Export: APA, MLA, and IEEE formatted citations for every verification
Architecture
React Frontend (Vite) Node.js Backend (Express)
Google Cloud Run Google Cloud Run
https://aset-ai.tech https://api.aset-ai.tech
│ │
└────────── HTTPS API ────────────┘
│
Container images — Google Artifact Registry
Secrets — Google Secret Manager
│
┌─────────────────────────┐
│ Agent Pipeline │
│ ResearchAgent │
│ VerificationAgent │
│ CitationAgent │
│ ReportAgent │
│ (Band Protocol bus) │
└─────────────────────────┘
│
Turso (libSQL/SQLite + FTS5)
1.2M papers · 72 topics · 28 domains
│
Redis — agent memory, research cache,
verification history, rate limiting
│
Google Gemini API
Claim extraction + verification
│
Arize Phoenix — LLM observability,
hallucination tracking, quality monitoring
│
Browserbase — managed browser sessions
for web evidence extraction
│
arXiv OAI-PMH + PubMed E-utilities
Self-growing database
Tech Stack
| Layer | Technology |
|---|---|
| Frontend | React 19, Vite 7, globe.gl |
| Backend | Node.js 22, Express |
| Deployment | Google Cloud Run, Artifact Registry, Secret Manager |
| Database | Turso (libSQL/SQLite) with FTS5 |
| Cache & Memory | Redis — research cache, agent memory, verification history |
| AI | Google Gemini API (multi-key rotation) |
| Agent Framework | Fetch.ai Agentverse (uAgents) |
| Message Bus | Band Protocol (inter-agent relay) |
| Observability | Arize Phoenix — LLM tracing, hallucination detection |
| Web Fetch | Browserbase — managed browser sessions |
| Auth | JWT + bcrypt + Email OTP |
| Document Processing | pdf-parse, mammoth, tesseract.js |
| YouTube | Multi-method transcript extraction (3 fallback strategies) |
| Extension | Chrome Manifest V3 |
Multi-Agent Pipeline
ASET uses a 4-agent pipeline where each agent has a single responsibility and agents communicate via the Band Protocol message bus:
User Claim
│
▼
ResearchAgent — searches 1.2M+ papers (local FTS + arXiv + PubMed)
│ Band: research.results
▼
VerificationAgent — LLM stance classification per paper, verdict generation
│ Band: verification.done
▼
CitationAgent — deduplicates sources, formats APA / MLA / IEEE citations
│ Band: citations.ready
▼
ReportAgent — assembles final structured report, notifies caller
Trigger via:
POST /api/agents/pipeline { "claim": "CRISPR can permanently edit the human genome" }
Agent status and message log:
GET /api/agents/status
Sponsor Integrations
Redis — Beyond Caching
Redis powers agent memory, verification history, research result caching, rate limiting, and real-time analytics.
GET /api/redis/stats # top domains, total verifications
GET /api/redis/history/:userId # fast verification history (no DB join)
POST /api/redis/logout # JWT token blacklist
Fetch.ai Agentverse
Four agents registered with the Agentverse mailbox — each accepts uAgents envelope format at its HTTP endpoint and can be discovered and messaged from other agents on the network.
POST /api/agents/research
POST /api/agents/verification
POST /api/agents/citation
POST /api/agents/report
Band Protocol
The inter-agent message bus uses Band Protocol's relay model. In local mode it runs as an in-process EventEmitter; with BAND_MNEMONIC set it submits oracle data requests to the Band chain for on-chain message provenance.
Browserbase
The browser extension's "Verify with ASET (+ web evidence)" option uses Browserbase to open a managed browser session on the current page, extract claim-relevant sentences, and include page-level evidence alongside paper citations.
POST /api/browserbase/extract { "url": "...", "claim": "..." }
POST /api/browserbase/search { "claim": "..." }
Arize Phoenix
Every Gemini LLM call is wrapped in an OpenTelemetry span sent to Arize Phoenix. Traces include hallucination risk signals (high confidence + empty evidence), confidence calibration checks, and per-paper stance classification metrics.
GET /api/arize/status
Live URLs
- App: https://www.aset-ai.tech
- API: https://api.aset-ai.tech
- Health: https://api.aset-ai.tech/health
- API Spec: https://api.aset-ai.tech/openapi.json
- Agent Status: https://api.aset-ai.tech/api/agents/status
Local Development
# Install dependencies
npm install
# Backend (port 3001)
node backend/server-turso.js
# Frontend (port 5173)
cd "ASET frontend"
npm install
npm run dev
Required environment variables — copy .env.example to .env and fill in:
# Core
TURSO_DATABASE_URL=...
GEMINI_API_KEY=...
# Sponsor integrations (all optional — degrade gracefully if not set)
REDIS_URL=redis://localhost:6379
BROWSERBASE_API_KEY=...
ARIZE_API_KEY=...
BAND_MNEMONIC=...
FETCHAI_RESEARCH_MAILBOX_KEY=...
Deploying to Google Cloud Run
# Build & push backend image
gcloud builds submit --tag <region>-docker.pkg.dev/<project-id>/aset-backend/aset-backend:latest .
# Deploy backend
gcloud run deploy aset-backend \
--image=<region>-docker.pkg.dev/<project-id>/aset-backend/aset-backend:latest \
--region=<region> --allow-unauthenticated --port=3001 \
--set-secrets="TURSO_DATABASE_URL=TURSO_DATABASE_URL:latest,GEMINI_API_KEY=GEMINI_API_KEY:latest,..."
# Build & deploy frontend (Vite build baked with VITE_API_URL, served via Nginx)
cd "ASET frontend"
gcloud builds submit --config=cloudbuild.yaml \
--substitutions="_IMAGE=<region>-docker.pkg.dev/<project-id>/aset-frontend/aset-frontend:latest,_VITE_API_URL=https://<backend-cloud-run-url>" .
gcloud run deploy aset-frontend \
--image=<region>-docker.pkg.dev/<project-id>/aset-frontend/aset-frontend:latest \
--region=<region> --allow-unauthenticated --port=8080
Secrets (Gemini/Turso/YouTube/Gmail keys) are stored in Google Secret Manager and injected as environment variables at deploy time — never baked into the container image.
Database Expansion
# Ingest new domains (PubMed + arXiv OAI-PMH)
node scripts/ingest-all-domains.js
# Migrate new papers to Turso
node scripts/migrate-new-domains.js
# Rebuild FTS index
node scripts/rebuild-fts.js
Browser Extension
Load unpacked from aset-extension/ in Chrome. Right-click any selected text to:
- Verify with ASET — standard verification against 1.2M+ papers
- Verify with ASET (+ web evidence) — standard verification plus Browserbase page evidence extraction
Team
- Vikas Tiwari (vikas2731)
Analysis
View
Metric
- 5
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- ExpressIn code
- HTMLIn code
- JavaScriptIn code
- ReactIn code
- RedisIn code
- AWSClaimed
- Node.jsClaimed
- PythonClaimed
6 of 9 appear in the indexed code. 3 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
615 KB
Source files
86
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
Cyberexe1/ASET_Berkley
127 files · 16.7 MB · @ 779bc28
Structure
Interface
30 files · 24%Screens, components and styles rendered to the user.
Application logic
41 files · 32%Domain rules, services and shared utilities.
+1 more
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- JavaScript76%
- CSS17%
- Markdown5%
- HTML2%
- YAML1%
- XML0%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
package.json
npm · 20- @arizeai/openinference-semantic-conventions
- @distube/ytdl-core
- @libsql/client
- @opentelemetry/exporter-trace-otlp-http
- @opentelemetry/sdk-trace-base
- @opentelemetry/sdk-trace-node
- bcryptjs
- cors
- dotenv
- express
- groq-sdk
- jsonwebtoken
- mammoth
- multer
- nodemailer
- pdf-parse
- redis
- tesseract.js
- +2 more
ASET frontend/package.json
npm · 16- globe.gl
- jspdf
- leaflet
- react
- react-dom
- react-leaflet
- three
- +9 more
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.