Skip to main content

Open-source Python library for intelligent harm detection and linguistic analysis in text

Project description

Reveal

An open-source Python library for intelligent harm detection and linguistic analysis in text.

Reveal combines Natural Language Processing, linguistic analysis, and cryptanalysis to identify harmful, coded, or anomalous language in text — helping researchers, platform moderators, and public safety professionals surface signals that standard tools miss.

What Reveal Detects

  • Propaganda and persuasion techniques (22 categories)
  • Grooming and predatory language
  • Self-harm coded language
  • Help signals from victims of abuse or bullying
  • Geographic location indicators
  • Emotional distress and sentiment
  • Manipulative and accusatory tone
  • Passive voice and agency obscuring
  • Point of view shifts
  • Shannon entropy anomalies
  • Unusual n-gram sequences
  • Statistically anomalous words

Installation

pip install reveal-nlp

Quick Start

from reveal.reasoning.reporter import analyze

text = "I feel so alone and trapped. Please someone help me."
result = analyze(text, fmt='text')
print(result)

Output formats

# Dictionary output for programmatic use
result = analyze(text)

# Formatted text report for human reading
result = analyze(text, fmt='text')

Project Structure

reveal/
├── harm/           # Harm detection, sentiment, reporting
├── linguistic/     # Voice, tone, POV analysis
├── cryptanalysis/  # Entropy, n-grams, anomaly detection
├── reasoning/      # Unified scoring and reporting
└── dictionaries/   # Word lists (JSON, community editable)

Contributing

Reveal is open source and actively seeking contributors — especially for expanding and validating the word lists in the dictionaries/ folder. No coding required to contribute word lists.

See docs/contributing.md for guidelines.

License

MIT License. See LICENSE for details.

Disclaimer

Reveal is a research and analysis tool. Word lists require ongoing community validation. Results should be interpreted by qualified professionals in appropriate contexts.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

reveal_nlp-0.1.0.tar.gz (41.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

reveal_nlp-0.1.0-py3-none-any.whl (33.6 kB view details)

Uploaded Python 3

File details

Details for the file reveal_nlp-0.1.0.tar.gz.

File metadata

  • Download URL: reveal_nlp-0.1.0.tar.gz
  • Upload date:
  • Size: 41.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.13

File hashes

Hashes for reveal_nlp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e8a3133b8e45a201f45c53fa2ff04211d7666a2b6f6d9fdacd45211e79067aa8
MD5 4c0cfd53e2efa79f99dcffd4b90cf192
BLAKE2b-256 d1a2dad012f89135fb7bfabc5c6166998d89f8362c55eadc2b0f26aa52218cfb

See more details on using hashes here.

File details

Details for the file reveal_nlp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: reveal_nlp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 33.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.13

File hashes

Hashes for reveal_nlp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c9bc070e882dd97088517270adb3716202dc76d870380411d2d13df46900c2ae
MD5 e9c06c58a75f03e512bb71972f5492bc
BLAKE2b-256 c5e7db566d635833d1fc059c7da5d2e3e7bc2a628c09ed68a56f4ed2d0d5866c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page