Skip to content

WhatsApp Chat Analyzer is a Flask-based NLP dashboard that parses WhatsApp chat exports and generates insights like user activity, sentiment trends, topic modeling, and emoji analytics with interactive visualizations.

Notifications You must be signed in to change notification settings

arvindpandey4/whatsapp_text_analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WhatsApp Chat Analyzer

A Flask web application that analyzes WhatsApp chat exports using NLP techniques.

Features

  • Upload and parse WhatsApp chat export files (.txt)
  • User activity analysis (top contributors, message patterns)
  • Sentiment analysis with VADER and TextBlob
  • Topic modeling with LDA
  • Emoji usage analysis
  • Interactive dashboard with visualizations

Installation

  1. Clone this repository
  2. Create a virtual environment:
    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
  3. Install dependencies:
    pip install -r requirements.txt
    
  4. Download required NLTK data:
    python -c "import nltk; nltk.download('punkt'); nltk.download('stopwords'); nltk.download('wordnet')"
    
  5. Download spaCy model:
    python -m spacy download en_core_web_sm
    

Usage

  1. Run the development server:
    python run.py
    
  2. Access the application at http://localhost:5000
  3. Upload a WhatsApp chat export file and explore the analysis

Project Structure

WhatsApp-Chat-Analyzer/
├── app/                     # Main application package
│   ├── __init__.py          # Initialize Flask app
│   ├── config.py            # Configuration settings
│   ├── routes.py            # URL routes and views
│   ├── models/              # Data models
│   ├── services/            # Business logic and services
│   │   ├── parser.py        # Chat parsing module
│   │   ├── analyzer.py      # NLP analysis module 
│   │   ├── visualizer.py    # Data visualization module
│   │   └── nlp/             # NLP components
│   │       ├── sentiment.py # Sentiment analysis
│   │       ├── topics.py    # Topic modeling
│   │       └── emoji.py     # Emoji analysis
│   ├── static/              # Static files (CSS, JS, images)
│   └── templates/           # HTML templates
├── tests/                   # Unit and integration tests
├── data/                    # Sample data and outputs
├── logs/                    # Application logs
├── notebooks/               # Development notebooks
├── venv/                    # Virtual environment (gitignored)
├── run.py                   # Application entry point
├── requirements.txt         # Project dependencies
└── README.md                # Project documentation

License

MIT

About

WhatsApp Chat Analyzer is a Flask-based NLP dashboard that parses WhatsApp chat exports and generates insights like user activity, sentiment trends, topic modeling, and emoji analytics with interactive visualizations.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published