# sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score architecture

> Architecture diagram of the GitHub repository sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-30). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score
- Repository: https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score

## Overview

TrustGuard is a multi-factor fake-news detection product with a web application and browser extension. The main workflow accepts article text or a URL, optionally scrapes the article, analyzes it, and presents trust results; users can compare sources and revisit saved analyses. Separate product areas cover threat intelligence, dashboards, API access, account settings, and notifications/integrations. The excerpts show routing and selected calls, but most extension and feature implementation was not sampled, so their connections are omitted or marked unverified.

Main entry points: [`trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx`](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx) (Application Router), [`trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Dashboard.tsx`](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Dashboard.tsx) (Public Dashboard), [`trustworthy-news-finder-main/trustworthy-news-finder-main/src/integrations/supabase/client.ts`](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/integrations/supabase/client.ts) (Supabase Client), [`trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Index.tsx`](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Index.tsx) (Article Analyzer)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_web["Web Application"]
  node_app["Application Router<br/>[App.tsx]"]
end

subgraph group_analysis["Analysis Workflow"]
  node_home["Article Analyzer<br/>[Index.tsx]"]
  node_scraper["Article Scraper<br/>[index.ts]"]
  node_analysis_logic["Trust Analysis<br/>[analysis.ts]"]
  node_compare["Source Comparison<br/>[Compare.tsx]"]
  node_factcheck["AI Fact Check<br/>[index.ts]"]
  node_api_analysis["Analysis API<br/>[index.ts]"]
end

subgraph group_insights["Threat Intelligence"]
  node_dashboard["Public Dashboard<br/>[Dashboard.tsx]"]
  node_threat_map["Threat Map<br/>[ThreatMap.tsx]"]
  node_threat_analytics["Threat Analytics"]
  node_threat_intel["Threat Intelligence<br/>[index.ts]"]
  node_leaderboard["Leaderboard<br/>[Leaderboard.tsx]"]
end

subgraph group_account["Accounts and History"]
  node_auth_page["Sign In<br/>[Auth.tsx]"]
  node_auth["Authentication State<br/>[AuthContext.tsx]"]
  node_history["Analysis History<br/>[History.tsx]"]
  node_settings["Account Settings<br/>[Settings.tsx]"]
  node_admin["Administration<br/>[Admin.tsx]"]
end

subgraph group_integrations["Integrations"]
  node_api_docs["API Documentation<br/>[ApiDocs.tsx]"]
  node_extension["Browser Extension<br/>[content.js]"]
  node_notifications["Notification Functions<br/>[index.ts]"]
  node_webhooks["Webhook Delivery<br/>[index.ts]"]
  node_supabase_client["Supabase Client<br/>[client.ts]"]
end

node_user(("Reader"))
node_database[("Supabase Data Store")]

node_user -->|"opens"| node_app
node_app -->|"routes to"| node_home
node_app -->|"routes to"| node_auth_page
node_app -->|"routes to"| node_history
node_app -->|"routes to"| node_dashboard
node_app -->|"routes to"| node_settings
node_app -->|"routes to"| node_compare
node_app -->|"routes to"| node_leaderboard
node_app -->|"routes to"| node_admin
node_app -->|"routes to"| node_api_docs
node_home -->|"requests scrape"| node_scraper
node_home -.->|"analyzes content"| node_analysis_logic
node_compare -->|"requests scrape"| node_scraper
node_compare -->|"analyzes content"| node_analysis_logic
node_dashboard -->|"renders"| node_threat_map
node_dashboard -->|"renders"| node_threat_analytics
node_auth_page -->|"signs in through"| node_auth
node_admin -->|"queries"| node_supabase_client
node_dashboard -->|"queries"| node_supabase_client
node_history -->|"reads and deletes"| node_supabase_client
node_supabase_client -.->|"connects"| node_database
node_api_docs -->|"documents endpoint"| node_threat_intel
node_extension -.->|"may invoke"| node_api_analysis
node_notifications -.->|"may use"| node_database
node_webhooks -.->|"may use"| node_database

click node_app "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx"
click node_home "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Index.tsx"
click node_scraper "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/scrape-article/index.ts"
click node_analysis_logic "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/lib/analysis.ts"
click node_compare "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Compare.tsx"
click node_factcheck "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/ai-fact-check/index.ts"
click node_api_analysis "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/analyze-api/index.ts"
click node_dashboard "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Dashboard.tsx"
click node_threat_map "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/components/ThreatMap.tsx"
click node_threat_analytics "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/components/ThreatAnalyticsDashboard.tsx"
click node_threat_intel "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/threat-intelligence/index.ts"
click node_leaderboard "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Leaderboard.tsx"
click node_auth_page "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Auth.tsx"
click node_auth "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/contexts/AuthContext.tsx"
click node_history "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/History.tsx"
click node_settings "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Settings.tsx"
click node_admin "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Admin.tsx"
click node_api_docs "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/ApiDocs.tsx"
click node_extension "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/public/extension/content.js"
click node_notifications "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/send-threat-alert/index.ts"
click node_webhooks "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/send-webhook/index.ts"
click node_supabase_client "https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/integrations/supabase/client.ts"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_app toneBlue
class node_home,node_scraper,node_analysis_logic,node_compare,node_factcheck,node_api_analysis,node_database toneAmber
class node_dashboard,node_threat_map,node_threat_analytics,node_threat_intel,node_leaderboard toneMint
class node_auth_page,node_auth,node_history,node_settings,node_admin toneRose
class node_api_docs,node_extension,node_notifications,node_webhooks,node_supabase_client,node_user toneIndigo
```

## Components

### Web Application

- [Application Router](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx`

### Analysis Workflow

- [Article Analyzer](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Index.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Index.tsx`
- [Article Scraper](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/scrape-article/index.ts): `trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/scrape-article/index.ts`
- [Trust Analysis](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/lib/analysis.ts): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/lib/analysis.ts`
- [Source Comparison](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Compare.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Compare.tsx`
- [AI Fact Check](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/ai-fact-check/index.ts): `trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/ai-fact-check/index.ts`
- [Analysis API](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/analyze-api/index.ts): `trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/analyze-api/index.ts`

### Threat Intelligence

- [Public Dashboard](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Dashboard.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Dashboard.tsx`
- [Threat Map](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/components/ThreatMap.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/components/ThreatMap.tsx`
- [Threat Analytics](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/components/ThreatAnalyticsDashboard.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/components/ThreatAnalyticsDashboard.tsx`
- [Threat Intelligence](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/threat-intelligence/index.ts): `trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/threat-intelligence/index.ts`
- [Leaderboard](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Leaderboard.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Leaderboard.tsx`

### Accounts and History

- [Sign In](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Auth.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Auth.tsx`
- [Authentication State](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/contexts/AuthContext.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/contexts/AuthContext.tsx`
- [Analysis History](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/History.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/History.tsx`
- [Account Settings](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Settings.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Settings.tsx`
- [Administration](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Admin.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Admin.tsx`

### Integrations

- [API Documentation](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/ApiDocs.tsx): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/ApiDocs.tsx`
- [Browser Extension](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/public/extension/content.js): `trustworthy-news-finder-main/trustworthy-news-finder-main/public/extension/content.js`
- [Notification Functions](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/send-threat-alert/index.ts): `trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/send-threat-alert/index.ts`
- [Webhook Delivery](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/send-webhook/index.ts): `trustworthy-news-finder-main/trustworthy-news-finder-main/supabase/functions/send-webhook/index.ts`
- [Supabase Client](https://github.com/sudhakar-2005/muti-factor-fake-news-detection-system-with-source-trust-score/blob/main/trustworthy-news-finder-main/trustworthy-news-finder-main/src/integrations/supabase/client.ts): `trustworthy-news-finder-main/trustworthy-news-finder-main/src/integrations/supabase/client.ts`

### Other components

- **Reader**
- **Supabase Data Store**

## Connections

- Reader → Application Router: opens
- Application Router → Article Analyzer: routes to (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx`)
- Application Router → Sign In: routes to (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx`)
- Application Router → Analysis History: routes to (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx`)
- Application Router → Public Dashboard: routes to (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx`)
- Application Router → Account Settings: routes to (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx`)
- Application Router → Source Comparison: routes to (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx`)
- Application Router → Leaderboard: routes to (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx`)
- Application Router → Administration: routes to (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx`)
- Application Router → API Documentation: routes to (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/App.tsx`)
- Article Analyzer → Article Scraper: requests scrape (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Index.tsx`)
- Article Analyzer → Trust Analysis: analyzes content
- Source Comparison → Article Scraper: requests scrape (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Compare.tsx`)
- Source Comparison → Trust Analysis: analyzes content (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Compare.tsx`)
- Public Dashboard → Threat Map: renders (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Dashboard.tsx`)
- Public Dashboard → Threat Analytics: renders (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Dashboard.tsx`)
- Sign In → Authentication State: signs in through (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Auth.tsx`)
- Administration → Supabase Client: queries (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Admin.tsx`)
- Public Dashboard → Supabase Client: queries (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/Dashboard.tsx`)
- Analysis History → Supabase Client: reads and deletes (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/History.tsx`)
- Supabase Client → Supabase Data Store: connects
- API Documentation → Threat Intelligence: documents endpoint (evidence: `trustworthy-news-finder-main/trustworthy-news-finder-main/src/pages/ApiDocs.tsx`)
- Browser Extension → Analysis API: may invoke
- Notification Functions → Supabase Data Store: may use
- Webhook Delivery → Supabase Data Store: may use
