Automated tool for assessing predatory journals using multiple backend sources
Project description
Aletheia-Probe: Automated Integrity Checks for Academic Journals & Conferences
๐ง Beta Release (v0.1.0) - This tool is currently in beta testing. We welcome feedback and bug reports from early adopters. See BETA-TESTING.md for how to help test and provide feedback.
Aletheia-Probe is a comprehensive command-line tool for evaluating the legitimacy of academic journals and conferences. By aggregating data from authoritative sources and applying advanced pattern analysis, it helps researchers, librarians, and institutions detect predatory venues and ensure the integrity of scholarly publishing.
About the Name
The name "Aletheia" (แผฮปฮฎฮธฮตฮนฮฑ) comes from ancient Greek philosophy, where it represents the concept of truth and unconcealment. In Greek mythology, Aletheia was personified as the goddess or spirit (daimona) of truth and sincerity. This reflects the tool's core mission: to reveal the truth about academic journals and conferences, helping researchers distinguish legitimate venues from predatory ones. The suffix "-Probe" emphasizes the tool's investigative natureโactively examining and uncovering the reality behind scholarly publishing claims.
TL;DR
# Beta release - Install from PyPI or source
# Option 1: Install from PyPI (recommended for beta testing)
pip install aletheia-probe
# Option 2: Install from source (for development)
git clone https://github.com/sustainet-guardian/aletheia-probe.git
cd aletheia-probe
pip install -e .
# Optional: Install unrar/unar if you want to use all data sources
# (required for Algerian Ministry source - skipped if not available)
# Debian/Ubuntu:
sudo apt-get install unrar
# macOS:
brew install unar
# Windows (via chocolatey):
choco install unrar
# First time: Sync data sources (takes a few minutes)
aletheia-probe sync
# Check the current state of the cache database
aletheia-probe status
# Assess a single journal
aletheia-probe journal "Journal of Computer Science"
# Assess all journals in a BibTeX file (returns exit code 1 if predatory journals found)
aletheia-probe bibtex references.bib
# Get detailed analysis with confidence scores from multiple sources
aletheia-probe journal --format json "Nature Reviews Drug Discovery"
Output: Combines data from multiple authoritative sources and advanced pattern analysis to provide confidence-scored assessments of journal legitimacy.
Note: The first sync downloads and processes data from multiple sources (DOAJ, Beall's List, etc.), which takes a few minutes. After that, queries typically complete in under 5 seconds.
Data Sources
This tool acts as a data aggregator - it doesn't provide data itself, but combines information from multiple authoritative sources:
- DOAJ - Directory of Open Access Journals
- Beall's List - Historical predatory journal archives
- Algerian Ministry - Algerian Ministry of Higher Education predatory journals list
- OpenAlex - Publication pattern analysis
- Crossref - Metadata quality assessment
- Retraction Watch - Journal retraction history analysis
- Scopus - Optional premium journal database
- Institutional Lists - Custom whitelist/blacklist configurations
- Cross-Validator - Cross-source consistency validation system
- Kscien Standalone Journals - Individual predatory journals identified by Kscien
- Kscien Publishers - Known predatory publishers
- Kscien Hijacked Journals - Legitimate journals that have been hijacked by predatory actors
- Kscien Predatory Conferences - Database of predatory conferences
The tool analyzes publication patterns, citation metrics, and metadata quality to provide comprehensive coverage beyond traditional blacklist/whitelist approaches.
Note on Conference Assessment: Conference checking is currently limited compared to journal assessment. The primary source for conference evaluation is the Kscien Predatory Conferences database. Most other data sources focus exclusively on journals, so conference assessments may have less comprehensive coverage and fewer cross-validation opportunities.
Quick Start
See the Quick Start Guide for installation instructions and basic usage examples.
Assessment Methodology
The tool uses a hybrid approach combining curated databases with advanced pattern analysis to achieve comprehensive coverage and high accuracy.
Backend Types
Curated Databases (High Trust)
These provide authoritative yes/no decisions for journals they cover:
| Backend | Type | Coverage | Purpose |
|---|---|---|---|
| DOAJ | Legitimate OA journals | 22,000+ journals | Gold standard for open access legitimacy |
| Scopus (optional) | Legitimate indexed journals | 30,000+ journals | Major subscription and OA journals |
| Beall's List | Predatory journal archives | ~2,900 entries | Historically identified predatory publishers |
| PredatoryJournals.org | Predatory journals/publishers | Community-maintained | Curated lists from predatoryjournals.org |
| Algerian Ministry | Predatory journal list | ~3,300 entries | Ministry of Higher Education predatory journals |
| Kscien Standalone Journals | Predatory journals | 1,400+ entries | Individual predatory journals identified by Kscien |
| Kscien Publishers | Predatory publishers | 1,200+ entries | Known predatory publishers |
| Kscien Hijacked Journals | Hijacked journals | ~200 entries | Legitimate journals compromised by predatory actors |
| Kscien Predatory Conferences | Predatory conferences | ~450 entries | Identified predatory conference venues |
| Retraction Watch | Quality indicator | ~27,000 journals | Retraction rates and patterns for quality assessment |
| Institutional Lists | Custom whitelist/blacklist | Organization-specific | Local policy enforcement |
Pattern Analysis (Evidence-Based)
These analyze publication patterns and metadata quality to detect predatory characteristics:
| Backend | Data Source | What It Analyzes | Key Indicators |
|---|---|---|---|
| OpenAlex Analyzer | OpenAlex API (240M+ works) | Publication volume, citation patterns, author diversity, growth rates | Abnormal publication volumes (>1000/year), suspicious citation ratios, rapid growth patterns |
| Crossref Analyzer | Crossref metadata API | Metadata completeness, abstracts, references, author information | Missing metadata, poor quality abstracts (<100 chars), low reference counts |
| Cross-Validator | Cross-source data | Publisher name consistency, data correlation across sources | Mismatched publisher names, data inconsistencies between sources |
How Assessment Works
1. Multi-Backend Query
The tool queries all enabled backends concurrently for comprehensive coverage:
Journal Query โ [Curated Databases + Pattern Analyzers] โ Combined Assessment
โ
โโ DOAJ (legitimate OA)
โโ Scopus (indexed journals)
โโ Beall's List (predatory)
โโ PredatoryJournals.org
โโ Kscien databases
โโ Retraction Watch (quality)
โโ OpenAlex Analyzer (patterns)
โโ Crossref Analyzer (metadata)
โโ Cross-Validator (consistency)
Note: Not all backends will find every journal. A journal may be:
- Found in DOAJ โ strong legitimate evidence
- Found in Beall's โ strong predatory evidence
- Not found in any curated database โ rely on pattern analysis
- Found in contradictory sources โ cross-validation resolves conflicts
2. Assessment Logic
Curated Database Results (Authoritative):
- DOAJ/Scopus match โ Classified as
legitimate(high confidence) - Predatory list match โ Classified as
predatory(high confidence) - No matches found โ Proceed to pattern analysis
Pattern Analysis (Evidence-Based): When curated databases don't have the journal, pattern analyzers evaluate quality:
๐ข Legitimacy Indicators (OpenAlex/Crossref):
- Consistent publication volume (20-500 papers/year)
- Healthy citation patterns (>3 citations/paper average)
- Complete metadata (abstracts >100 chars, references, author ORCIDs)
- Recognized publisher with history
- Stable growth patterns
๐ด Predatory Indicators (OpenAlex/Crossref):
- Publication mill patterns (>1000 papers/year)
- Extremely low citations (<0.5/paper)
- Incomplete metadata (no abstracts, missing author info)
- Suspicious/unknown publisher
- Sudden publication volume spikes
3. Confidence Scoring
Final confidence is determined by:
- Source authority: DOAJ/Scopus > Pattern analysis > Smaller lists
- Agreement: Multiple sources agreeing โ higher confidence
- Evidence strength: Strong indicators > weak signals
- Cross-validation: Consistent data across sources increases confidence
- Retraction data: High retraction rates lower confidence for "legitimate" journals
4. Result Combination
The dispatcher aggregates all backend results:
- Conflicting assessments are resolved by source weight
- Multiple agreeing sources boost confidence
- Pattern analysis supplements curated databases
- Detailed reasoning explains the assessment
Example Assessment Scenarios
Scenario 1: Well-Known Legitimate Journal
Input: "Nature"
โ
โโ DOAJ: โ Not found (subscription journal, not open access)
โโ Scopus: โ Found โ "legitimate"
โโ Predatory Lists: โ Not found
โโ Retraction Watch: โ Found โ 153 retractions, 0.034% rate (within normal)
โโ OpenAlex: โ Found โ 446,231 publications, healthy citations
โโ Crossref: โ Found โ Complete metadata, Nature Publishing Group
โ
Result: LEGITIMATE (confidence: 0.95)
Reasoning: "Found in Scopus with excellent publication patterns and metadata quality"
Scenario 2: Known Predatory Journal
Input: "International Journal of Advanced Computer Science and Applications"
โ
โโ DOAJ: โ Not found
โโ Predatory Lists: โ Found in Kscien database โ "predatory"
โโ Retraction Watch: โ Not found
โโ OpenAlex: โ Found โ High volume (>800/year), low citations
โโ Crossref: โ Found โ Poor metadata quality
โ
Result: PREDATORY (confidence: 0.90)
Reasoning: "Listed in Kscien predatory database, confirmed by publication patterns"
Scenario 3: Unknown Journal (Pattern Analysis)
Input: "Emerging Regional Journal"
โ
โโ DOAJ: โ Not found
โโ Scopus: โ Not found
โโ Predatory Lists: โ Not found
โโ OpenAlex: โ Found โ 150 papers/year, 5 citations/paper average
โโ Crossref: โ Found โ Good metadata, established publisher
โ
Result: INSUFFICIENT_DATA (confidence: 0.45)
Reasoning: "Not in major databases; pattern analysis suggests legitimate practices but low confidence"
Optional: Scopus Journal List
To enhance coverage with Scopus data:
- Download the spreadsheet from researchgate.net
- Create directory:
mkdir -p .aletheia-probe/scopus - Place Excel file (e.g.,
ext_list_October_2024.xlsx) in this directory - Run
aletheia-probe syncto process the data
Benefits: Adds nearly 30,000 subscription journals from major publishers (Elsevier, Springer, Wiley, etc.)
Documentation
- Quick Start Guide - Installation and basic usage
- User Guide - Comprehensive usage examples and features
- Configuration Reference - All configuration options
- Contributing Guide - Development setup and guidelines
- Troubleshooting - Common issues and solutions
AI-Assisted Development
This project explicitly encourages and welcomes the use of AI coding agents as part of the development workflow. AI tools are valuable for:
- Code generation and refactoring
- Writing tests and documentation
- Code review and quality improvement
- Problem-solving and debugging
- Learning and exploring the codebase
Guidelines for AI-Assisted Contributions:
- Review and Verify: All AI-generated code must be thoroughly reviewed, tested, and understood before submission
- Quality Standards: AI-assisted code must meet the same quality standards as manually written code (see AICodingAgent.md)
- Transparency: Contributors may optionally indicate AI assistance in commit messages or PR descriptions using tags like
[AI-assisted]for transparency - Responsibility: Contributors remain fully responsible for all submitted code, regardless of how it was generated
- Security: Extra attention should be paid to security implications of AI-generated code
For detailed guidelines on using AI coding agents with this project, see AICodingAgent.md.
Funding Acknowledgment
This work was funded by the Federal Ministry of Research, Technology and Space (BMFTR) in Germany under the grant number 16KIS2251 of the SUSTAINET-guardian project. The views expressed are those of the author.
License
MIT License - see LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aletheia_probe-0.4.0.tar.gz.
File metadata
- Download URL: aletheia_probe-0.4.0.tar.gz
- Upload date:
- Size: 112.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1d09a6b453971ce3635c4801dfaeda98959f15716410cfa93e43c74b23d1ed61
|
|
| MD5 |
edbf0570cd0a7803a9ee2b90fbcfefed
|
|
| BLAKE2b-256 |
6d0799d166e7e53d8353c993c34f4baff5cd8f6b3c3bc8afb4af799fe94c2d89
|
Provenance
The following attestation bundles were made for aletheia_probe-0.4.0.tar.gz:
Publisher:
release.yml on sustainet-guardian/aletheia-probe
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aletheia_probe-0.4.0.tar.gz -
Subject digest:
1d09a6b453971ce3635c4801dfaeda98959f15716410cfa93e43c74b23d1ed61 - Sigstore transparency entry: 713969687
- Sigstore integration time:
-
Permalink:
sustainet-guardian/aletheia-probe@82cc634ba8e54170e3babd6cf8a23b117426bf70 -
Branch / Tag:
refs/tags/v0.4.0 - Owner: https://github.com/sustainet-guardian
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@82cc634ba8e54170e3babd6cf8a23b117426bf70 -
Trigger Event:
push
-
Statement type:
File details
Details for the file aletheia_probe-0.4.0-py3-none-any.whl.
File metadata
- Download URL: aletheia_probe-0.4.0-py3-none-any.whl
- Upload date:
- Size: 137.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3ce9d91baac5f48eda6936dabe564d2f59222ba655e9083a916974b9ebd24fc2
|
|
| MD5 |
bce6deba59ab57a59886a0c34474dc00
|
|
| BLAKE2b-256 |
4541afc133badb6c4177922103f985fef6ce15a796313524d2559cacfee4b1db
|
Provenance
The following attestation bundles were made for aletheia_probe-0.4.0-py3-none-any.whl:
Publisher:
release.yml on sustainet-guardian/aletheia-probe
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aletheia_probe-0.4.0-py3-none-any.whl -
Subject digest:
3ce9d91baac5f48eda6936dabe564d2f59222ba655e9083a916974b9ebd24fc2 - Sigstore transparency entry: 713969688
- Sigstore integration time:
-
Permalink:
sustainet-guardian/aletheia-probe@82cc634ba8e54170e3babd6cf8a23b117426bf70 -
Branch / Tag:
refs/tags/v0.4.0 - Owner: https://github.com/sustainet-guardian
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@82cc634ba8e54170e3babd6cf8a23b117426bf70 -
Trigger Event:
push
-
Statement type: