A comprehensive personal diary assistant powered by Memori's advanced memory capabilities, designed to help you track your daily experiences, analyze patterns, and receive personalized recommendations for improving your life.
- Persistent Memory: All conversations and diary entries are stored and analyzed using Memori
- Pattern Recognition: Automatically identifies trends in mood, productivity, and life events
- Contextual Responses: Provides personalized advice based on your complete history
- Streamlit Web App: Beautiful, interactive web interface
- Command Line Interface: Terminal-based interaction for quick entries
- Mood Tracking: Visual mood analysis with emoji support
- Productivity Metrics: Track and visualize your daily productivity levels
- Pattern Analysis: Analyze mood, productivity, habits, goals, and relationships
- Personalized Recommendations: Get specific advice tailored to your patterns
- Daily Summaries: Automatic daily reflection and insights
- Goal Tracking: Set, monitor, and achieve personal and professional goals
- Memory Search: Find relevant past experiences and insights
- Habit Analysis: Understand your behavioral patterns
- Progress Monitoring: Track improvements over time
- Automated Insights: Receive proactive suggestions for better living
- Python 3.8+
- OpenAI API key
- Virtual environment (recommended)
-
Clone and navigate to the project:
cd personal_diary_assistant -
Install dependencies:
pip install -r requirements.txt
-
Set up environment variables: Create a
.envfile in the project directory:OPENAI_API_KEY=your_openai_api_key_here
streamlit run streamlit_app.pyThis will open a beautiful web interface at http://localhost:8501
python diary_assistant.pypython demo.pyRun this to see a demonstration of all key features including diary entries, pattern analysis, and personalized recommendations in the CLI.
-
Morning Setup
- Open the app and set your current mood
- Add your daily goals or intentions
-
Throughout the Day
- Add diary entries as things happen
- Rate your productivity levels
- Record important events or thoughts
-
Evening Reflection
- Request a daily summary
- Get personalized recommendations
- Plan for tomorrow
Diary Entry:
"Had a productive day at work, finished the project proposal and got positive feedback from my manager. Feeling accomplished but also a bit stressed about the upcoming deadline."
Asking for Insights:
"Can you analyze my productivity patterns over the last month?"
"What recommendations do you have for managing my work stress?"
"How has my mood been trending lately?"
Goal Setting:
"I want to start exercising regularly - can you help me create a plan?"
"Track my progress on learning Python"
- Mood Patterns: Track emotional trends and triggers
- Productivity Analysis: Understand your most productive times and conditions
- Habit Tracking: Monitor recurring behaviors and their impacts
- Goal Progress: Measure advancement toward objectives
- Relationship Insights: Analyze social interactions and their effects
- Overall Life Trends: Comprehensive lifestyle pattern analysis
- Productivity: Time management, work efficiency, focus improvements
- Wellbeing: Mental health, stress management, work-life balance
- Relationships: Social connections, communication improvements
- Habits: Behavior modification, routine optimization
- Goals: Achievement strategies, milestone planning
- General: Overall life enhancement suggestions
The assistant uses advanced function calling with these tools:
memory_search: Find relevant past experiencesanalyze_patterns: Examine trends across different time periodsget_recommendations: Generate personalized advice
- Maintains conversation history within sessions
- Integrates past memories for contextual responses
- Balances recent context with historical patterns
The modular design allows for easy addition of:
- New analysis types
- Additional data sources
- Custom visualization components
- Third-party integrations
- Local Storage: All data stored locally in SQLite databases
- No Cloud Sync: Your personal information stays on your device
- API Usage: Only OpenAI API calls for AI processing (no data retention by default)
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
Start your journey to better self-awareness and personal growth today! 🌟