Skip to content

choxos/citicious

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Citicious

Detect retracted articles and fake/hallucinated citations in scientific papers

License: MIT

Citicious is a Chrome extension that helps researchers and readers identify:

  • Retracted articles - Papers that have been formally retracted by journals
  • Retracted citations - References in a paper that cite retracted articles
  • Fake citations - Potentially hallucinated citations (e.g., from LLM-generated content)

Features

  • Top Banner Alert - Prominent warning when viewing a retracted article
  • Inline Badges - Visual indicators next to each reference
  • Sidebar Panel - Detailed information about all citations on the page
  • Manual DOI Check - Check any DOI directly from the popup
  • Works Everywhere - Supports PubMed, Google Scholar, ScienceDirect, Nature, arXiv, and many more

How It Works

  1. Retraction Detection: Uses the Retraction Watch Database via CrossRef API (68,000+ retracted articles)
  2. Citation Validation: Verifies citations against CrossRef and OpenAlex APIs
  3. Fake Detection: Identifies potentially hallucinated citations by checking if DOIs exist and comparing metadata (authors, year, title, journal)

Screenshot

┌──────────────────────────────────────────────────────────────┐
│ ⚠️ This article has been RETRACTED                          │
│ Retraction · Retracted: Jan 15, 2024 · Reason: Plagiarism   │
│ View retraction notice →                                     │
└──────────────────────────────────────────────────────────────┘

Installation

From Source (Development)

  1. Clone the repository:

    git clone https://github.com/choxos/citicious.git
    cd citicious
  2. Install dependencies and build the extension:

    cd extension
    npm install
    npm run build
  3. Load in Chrome:

    • Go to chrome://extensions/
    • Enable "Developer mode"
    • Click "Load unpacked"
    • Select the extension/dist folder

Backend Setup (Optional)

The extension can use a local backend for enhanced performance:

  1. Set up PostgreSQL database

  2. Install backend dependencies:

    cd backend
    npm install
    cp .env.example .env
    # Edit .env with your database credentials
  3. Initialize database and import Retraction Watch data:

    npm run db:push
    npm run import:retractions ../retraction_watch.csv
  4. Start the server:

    npm run dev

Citation Status Types

Status Badge Description
Retracted ⚠️ RETRACTED Article has been formally retracted
Fake ❌ FAKE Citation could not be verified in databases
Suspicious ❓ SUSPICIOUS Metadata discrepancies found
Verified ✓ Verified Citation confirmed valid

API Endpoints

Endpoint Method Description
/api/v1/check/retraction POST Check if DOI/PMID is retracted
/api/v1/check/citation POST Validate citation exists & metadata
/api/v1/check/full POST Combined retraction + validation check
/api/v1/check/batch POST Batch check multiple citations
/api/v1/health GET Health check
/api/v1/stats GET Database statistics

Tech Stack

  • Extension: Chrome Manifest V3, TypeScript, Webpack
  • Backend: Node.js, Fastify, TypeScript
  • Database: PostgreSQL with Prisma ORM
  • External APIs: CrossRef, OpenAlex

Data Sources

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Author

Ahmad Sofi-Mahmudi

Acknowledgments

  • Crossref for the Retraction Watch Database API
  • OpenAlex for the open scholarly metadata API
  • Retraction Watch for their invaluable work in tracking retractions

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •