A full-stack Discord bot and web application that analyzes message sentiment using Google Cloud NLP
MoodMSG is an intelligent Discord bot that reads user messages and analyzes sentiment using Google Cloud's Natural Language API. Users can track their emotional patterns through an interactive web dashboard that visualizes their past messages and sentiments over time.
- ๐ค Real-time Discord Bot - Analyzes messages as they're sent in channels
- ๐ Sentiment Analysis - Uses Google Cloud NLP for accurate emotion detection
- ๐ Data Visualization - Interactive charts showing sentiment trends
- ๐ญ Sentiment Tracking - View historical message data and mood patterns
- ๐จ Modern Web UI - Beautiful React-based dashboard
- Language: Python 3
- Framework: Discord.py
- NLP: Google Cloud Natural Language API
- Data Processing: Pandas, NumPy, Matplotlib
- Database: MongoDB
- APIs: Tenor API
- Frontend: React, Redux
- UI Framework: Ant Design, React Bootstrap
- Backend: Node.js, Express
- Database: MongoDB (via Mongoose)
- Python 3.7+
- Node.js 14+
- MongoDB database
- Google Cloud account with Natural Language API enabled
- Discord Bot token
- Tenor API key (optional)
git clone https://github.com/yourusername/MoodMSG.git
cd MoodMSG# Install Python dependencies
pip install -r requirements.txt
# Create a .env file
touch .env
# Add your credentials to .env
echo "token=YOUR_DISCORD_BOT_TOKEN" >> .env
echo "tenorkey=YOUR_TENOR_API_KEY" >> .env# Download your Google Cloud service account key
# Save it as cred.json in the root directory# Install server dependencies
cd server
npm install
cd ..
# Install client dependencies
cd client
npm install
cd ..Update the MongoDB connection string in bot.py with your credentials.
python bot.pycd server
node index.jscd client
npm startThe web application will be available at http://localhost:3000
- The bot automatically analyzes messages in Discord channels
- Check your sentiment history on the web dashboard
- View your message history
- See sentiment trends over time
- Explore interactive visualizations
Creating our first Discord bot with NLP integration, while also building a full-stack applicationโall within a tight 36-hour timeframe.
- โ Successfully integrated Google Cloud NLP for sentiment analysis
- โ Built a working Discord bot from scratch
- โ Created a full-stack web application with data visualization
- โ Completed the project on schedule despite taking 2 hours to finalize the idea
- โ Collaborated effectively in a remote team setting
Our team explored new technologies and strengthened weak areas:
- Python development for some team members
- React and Redux for frontend development
- MongoDB for data persistence
- BeautifulSoup for web scraping
- NLP API integration
- User authentication and route security
- Cloud deployment (Heroku/AWS/DigitalOcean)
- Expanded statistics and analytics
- Enhanced UI/UX improvements
- Multi-server support
- Customizable sentiment categories
- Message filtering and privacy controls
ISC
Built with โค๏ธ by the MoodMSG team during a hackathon
Made during a 36-hour hackathon
Analyzing emotions, one message at a time ๐ญ