Your personal AI-powered mood analyst and wellness guide
- 📝 Smart Journal Analysis - Write freely about your thoughts and emotions
- 🎭 AI Mood Detection - Powered by Google Gemini AI for accurate sentiment analysis
- 📈 Mood Scoring - Get quantified mood scores (0-100) with visual progress bars
- 💡 Personalized Coping Tips - Receive tailored wellness suggestions
- 🤔 Reflection Prompts - Guided journaling questions for deeper self-awareness
- 📊 Mood History Tracking - Visualize your emotional journey over time
- 📱 Beautiful UI - Modern dark theme with smooth animations
- 🔄 Offline Fallback - Works without API key using heuristic analysis
- 📥 Data Export - Download your mood history as CSV
- Write - Share your thoughts in the journal entry box
- Analyze - AI processes your text for emotional insights
- Discover - Get mood analysis, coping strategies, and reflection prompts
- Track - Your entries are automatically saved to build your mood timeline
- Reflect - View historical trends and download your data
- Python 3.8+ installed
- Git (optional, for cloning)
-
Clone the repository bash git clone https://github.com/amr7503/mindmate.git cd mindmate
-
Create virtual environment bash
python -m venv .venv .venv\Scripts\activate
python3 -m venv .venv source .venv/bin/activate
-
Install dependencies bash pip install -r requirements.txt
-
Set up Gemini API (Recommended)
Create a .env file in the project root: env GEMINI_API_KEY=your_api_key_here
Get your free API key from Google AI Studio
-
Run the application bash streamlit run app.py
-
Open in browser
Navigate to http://localhost:8501
Create a .env file with the following:
env GEMINI_API_KEY=your_gemini_api_key_here
MindMate works offline with a built-in heuristic analyzer if no API key is provided. You'll see a warning but the app remains fully functional.
mindmate/ ├── app.py # Main Streamlit application ├── gemini_client.py # Google Gemini API integration ├── storage.py # Data persistence and history management ├── requirements.txt # Python dependencies ├── .env.example # Environment variables template ├── README.md # This file └── data/ # Auto-created directory for mood history └── mood_history.json
- Streamlit - Web application framework
- Google Gemini API - Advanced AI text analysis
- Pandas - Data manipulation and analysis
- Python-dotenv - Environment configuration
- Requests - HTTP library for API calls
- Uses Google's latest Gemini 2.5 Flash model
- Contextual understanding of emotions and sentiment
- Intelligent tip generation based on your specific situation
- Dynamic emoji system reflecting mood intensity
- Interactive mood score charts
- Historical trend analysis with beautiful line graphs
- All data stored locally in JSON format
- No cloud storage or external data sharing
- Full control over your personal information
Contributions are welcome! Feel free to:
- Fork the repository
- Create a feature branch (git checkout -b feature/amazing-feature)
- Commit your changes (git commit -m 'Add amazing feature')
- Push to the branch (git push origin feature/amazing-feature)
- Open a Pull Request
- Powered by Google Gemini AI
- UI framework by Streamlit
- Created with ❤ for mental health awareness
- Created by Somen Pradhan 😁