Emotional Map Overview
Core Relationships Diagram
EmotionalMap
Defines an "Emotional Map" feature, which users can records to. Contains localized names/descriptions, activation status, VIP status, and minimum usage requirements (minimum_days_required, minimum_logs_required). It holds the associated Emotion choices and can trigger specific NotificationTemplates.
Emotion
Represents the different emotional states a user can select when logging an entry for their EmotionalMap. Contains localized names, emoji, type, and color. (The related SubEmotion model is marked as DEPRECATED).
EmotionalMapLog
Records a specific emotional entry made by a User to an EmotionalMap. It logs the chosen Emotion, the date, optional notes, and any associated EmotionReasons.
EmotionReason
Defines possible reasons or contexts provided by the user when logging an Emotion in the EmotionalMapLog.
NotificationTemplate
Defines reusable templates for notifications. Can be linked polymorphically (typeable) to an EmotionalMap to trigger notifications related to map progress or engagement.
User
The user who subscribes to and interacts with the Emotional Map feature.