Skip to content

MoodGuru is an mood-tracking app that analyzes user's current mood based on their journals via NLP, provides customized feedback, and records user's mood pattern over time.

License

Notifications You must be signed in to change notification settings

TeamMoodTrackerADY/MoodGuru

Repository files navigation

MoodGuru

Table of Contents

  1. Overview
  2. Product Spec
  3. Wireframes

Overview

Demo Slides for MoodGuru:

Please refer to THIS LINK for more details and a demo walk-through of the app.

Description

MoodGuru is a mood-tracking app that analyzes user's current mood based on their journals via NLP, provides customized feedback, and records user's mood pattern over time, aiming to improve users' self-awareness about what triggers different emotions and how to culture a healthy mindset.

Liscence warning due to application for Free liscence of Chaquopy being processed.

For future milestones, we will work on

  • Community feature allowing users to offer suggestions to one another.
  • Chart to visualize user's mood pattern over time.
  • Topic tagging on user's journal to provide more customized feedbacks.

App Evaluation

  • Category: Emotion, health, informational
  • Mobile: Instead of a desktop website, it is much more convenient and practical for the users to use their phone to track their mood and journal their daily lives on a mobile app. Whenever the users want to reflect their emotions, they can just do so in a blink of an eye in their own mobile device.
  • Story: There have been other similar mood tracker Android apps in the market already. (TODO: Look more into features in Android mood tracker apps!!)
  • Market: This app focuses on younger people such as college students and young working adults. But anyone could find this app helpful.
  • Habit: Since this app's main purpose is to reflect and journal, it could form a healthy habit for the users. If they find suggestions or motivation notes helpful, they would be more likely to use it and gradually form a habit.
  • Scope: There is a lot of potential to increase the scope of this app since there are many extra features that can be implemented besides inputting daily moods and journaling. However, as of now, the required user stories should be helpful enough to the users.

Product Spec

1. User Stories (Required and Optional)

Required Must-have Stories

As a user, I want to keep track of my mental health using these features:

  • Select adjective(s) that represents their feelings for certain moments of their days.
  • Rate their emotions on a scale of 1-5
  • Look at a chart to visualize the changes of their emotion over time.
  • Write events, comments or self-motivation specific to that emotion.
  • Receive suggestions on how to motivate themselves

Optional Nice-to-have Stories

  • Users can login.
  • Users can link Spotify to their app so that they can listen to music while reflecting their mood.
  • Users can make their journals and adjective public to the community.
  • Users can send suggestions directly to other users.
  • Users can set up filters to avoid receiving messages containing certain words.
  • Users can customize the adjectives to describe their specific emotion.
  • Users can customize the emojis of the adjectives.
  • Users can set up a reminder so that the alarm will go off at a fixed time to remind users to use the app and reflect on their day.
  • Users can write their journal first and let the emotion be detected by the app.
  • Users can be provided with customized suggestions based on the topic of their journal.
  • User can have number associate to each emotion so that they can see their average emotion.
  • User can change the horizontal axis/time of chart

2. Screen Archetypes

  • Journal
    • Allows users to look at the summary of their past journals (i.e first few lines each post) as well as suggestions.
    • Bottom navigation menu with the "Compose new journal" feature
  • Compose
    • Allows users to select adjective(s) that represents their feelings for certain moments of their days.
    • Users can rate their emotions on a scale of 1-5
    • Users can write events, comments or self-motivation specific to that emotion.
  • Suggestion
    • Users will receive suggestions/ quotes on how to motivate themselves.
  • Chart
    • Users can look at charts to visualize the changes of their emotion over time.

3. Navigation

Tab Navigation (Tab to Screen)

  • Compose
  • Chart
  • Journal

Optional:

  • Community
  • Profile

** Flow Navigation** (Screen to Screen)

  • Login/ Sign up -> Dashboard -> Compose -> Emojis & Ratings -> Compose Journal -> Suggestions

  • Dashboard -> Detailed Journal

  • (Optional) Emojis & Ratings -> Add emojis -> Customize emojis

Wireframes

Models

  • Post
Property Type Description
emotion Emotion a adjective that describes your present feeling
journal String users' reflection and comments about their feelings
createdAt DateTime when the journal was created
suggestion Suggestion suggestions specific to this post
  • Emotion
Property Type Description
emoji String an icon to visually describe the emotion
rating Number the level of how the user is feeling certain emotion on a scale of 1-5
adjective String a keyword to describe what emotion that emoji represents
  • Suggestion
Property Type Description
quotation String a quote related to the journal/emotions
advice String useful tips on what to do to get rid of bad emotion or how to keep a positive mindset

Open-source libraries used

  • vaderSentiment - NLP entiment analysis tool that scores the polarity and intensity of a sentence/paragraph
  • Chaquopy - API for calling Python code in Java/Kotlin.
  • Volley - an HTTP library that makes networking for Android apps easier and, most importantly, faster.
  • Android Async HTTP - Simple asynchronous HTTP requests with JSON parsing.
  • Glide - Image loading and caching library for Android.

About

MoodGuru is an mood-tracking app that analyzes user's current mood based on their journals via NLP, provides customized feedback, and records user's mood pattern over time.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published