A Streamlit app for analyzing WhatsApp chat exports. Upload your chat file to get insights into overall and user-specific activity. Features include total messages, words, media, and links shared, message timelines, activity maps, user activity rankings, word clouds, and common words and emojis.
- Overall Analysis: Get a summary of the entire chat.
- User-Specific Analysis: Select a group member to see their activity.
- Message Statistics: Total messages, words, media, and links shared.
- Timelines: Line graphs showing message trends over time.
- Activity Maps: Bar graphs of active months and days.
- User Rankings: Most active users and their activity percentages.
- Word Cloud: Visualization of the most common words.
- Emoji Analysis: Most frequently used emojis.
- Many More Features: Constantly adding more insights and visualizations.
-
Clone the repository:
git clone https://github.com/RatnapalShende/whatsapp-chat-analyzer.git cd whatsapp-chat-analyzer
-
Create a virtual environment:
python -m venv env source env/bin/activate # On Windows use `env/Scripts/activate`
-
Install the required packages:
pip install -r requirements.txt
-
Run the Streamlit app:
streamlit run app.py
-
Export your WhatsApp chat:
- Open WhatsApp and go to the chat you want to analyze.
- Tap on the chat menu and select "Export Chat".
- Choose "Without Media" for faster processing.
- Save the file to your device.
-
Open the app:
- Follow the installation steps to run the app locally.
-
Upload your chat file:
- Click on the "Browse files" button and select the exported chat file.
-
View the analysis:
- Explore overall chat statistics and user-specific insights using the sidebar.
You can access the deployed app here whatsapp chat analyzer.
Ratnapal Shende - Linkedin - [email protected]
Distributed under the Apache 2.0 license. See LICENSE
for more information.
https://github.com/RatnapalShende
Contributions are welcome! Follow these steps to contribute:
-
Fork the repository.
-
Create a new branch:
git checkout -b feature-name
-
Make your changes.
-
Commit your changes:
git commit -m "Add feature description"
-
Push to the branch:
git push origin feature-name
-
Open a pull request on GitHub.
- Sentiment Analysis: Show the overall mood of the chat or individual users.
- Message Heatmap: Visualize message frequency by hour and day of the week.
- Advanced Filtering: Filter messages by keywords or date ranges.
- Interaction Network: Visualize user interactions with a network graph.
- Data Export: Export analyzed data to CSV or Excel.
- Text Summarization: Summarize chat conversations.
- User Mentions: Highlight user mentions.