Truth Seeker is a full-stack Fake News Detection application that utilizes Machine Learning and Retrieval-Augmented Generation (RAG) to evaluate the authenticity of news articles.
- Machine Learning Predictor: Evaluates textual patterns to classify news credibility.
- RAG Architecture (ChromaDB): Retrieves factual context from a vector database to cross-reference and verify news queries.
- Modern User Interface: A responsive React frontend for users to input news text and receive an instant analysis.
- Robust Python API: A scalable backend handling text vectorization, RAG queries, and ML classification.
- Frontend: React, JavaScript, CSS
- Backend: Python, API Architecture handling RAG and Predictions
- Vector Database: ChromaDB
- Machine Learning: Jupyter Notebooks (
training_model.ipynb), predictive models
├── backend/ # Python API backend (Routes, RAG Service, Predictor logic)
├── frontend/ # React frontend user interface
├── models/ # Exported ML model weights (Not checked into source control)
├── notebooks/ # Jupyter notebooks for model training and experiments
├── chroma_db/ # Chroma Vector Storage for RAG (Not checked into source control)
├── data/ # Raw and processed datasets
└── requirements.txt # Python dependencies
- Navigate to the backend directory:
cd backend - Create and activate a Python virtual environment:
python -m venv venv # On Windows use: venv\Scripts\activate
- Install dependencies (located in the root folder):
pip install -r ../requirements.txt
- Run the API Server:
python main.py
- Navigate to the frontend directory:
cd frontend - Install dependencies:
npm install
- Start the React development server:
npm start
(Note: Several directories including datasets, ML model checkpoints, and database stores are intentionally excluded from GitHub via .gitignore.)