Connect mood, emotions, body sensations and life events

Hey dear QS community,

We have created a tool “moodspot” that shall help track ones mental states and allows to connect those to sensation in the body as well as to different life events. Idea is that you answer (preferably daily) a set of questions asked by a chat bot in some messenger (currently we support only Telegram) and then inspect aggregated and color-coded results within our web app. There are various filtering options provided that shall help you either see a big picture or focus on specific concepts while exploring results. The tool is free to use and you can easily delete all the data you entered.

We keep updating and improving our tool and would be beyond excited to hear some feedback from you.

For more details please check out or website https://moodspotlab.com/about.

Hi,

After using the tool for a while (and as a previous user of apps like Daylio or Google forms for similar mood self-tracking) I find it interesting in terms of feeling more “conversational” even knowing there’s a bot at the other side, which so far keep me engaged in entering data. I also guess the different visualization of results will get more insightful after a longer period of tracking, but in any case a couple of questions: What are your plans for the analysis / visualization of open text data in the last step (diary)? And, after reading your terms of service / privacy I haven’t found the possibility of downloading my own raw data, is that possibility considered?

1 Like

Dear Enric,

First of all, many thanks for your feedback! We appreciate it so so much :slight_smile:

Regarding your questions.

Open text: currently you can see your free text input in the diary section of web app (there is a link to it right above the mood trend plot). In terms of future plans we have already tried out some NLP approaches to process free text data, extract main concepts and generate similar wordclouds as for other questions. Goal here would be to show what exactly falls into each ‘trigger’ bucket. However due to high costs of processing text with ML we would probably offer this functionality (along with several other features) only in the payed ‘subscription’ version of moodspot that we are developing now.

Download data: you are absolutely right, this functionality is required by GDPR and we intend to offer a simple and fully automated way to download data through moodspot_bot very soon. Right now unfortunately (as stated in privacy) user still has to request it by sending us an email to pirozhochek.lab@gmail.com.

We are very happy that our bot keeps you engaged :slight_smile: We have also added check-in reminder functionality recently, this can be configured through bot setting (button in the main menu).

Thanks and kind regards,
Anna from Moodspot.

I am quite interested in product like this. And as a JavaScript Developer, I am interested in the technologies that others are using to make self-quantification happen. Can you share anything about how your application was built or how it operates?

I understand if this information is private and cannot be shared. I appreciate you sharing your work here.

1 Like

Sure, we can share that. We are actually thinking about making a bigger post with proper description on some platform as medium or such.

So, our stack in the nutshell is AWS + Go + Vue.

To manage dialog we implemented our own framework which is somewhat similar to AWS Lex. Initially we did it with Lex, but it turned out to be not optimal for our needs.
The whole backend is pretty much just a number of functions written in Go. Telegram has few nice packages in go for bots, we use go-telegram-bot-api. We deploy these functions to AWS (AWS Lambda), so we are serverless :wink: We use DynamoDB to store data. There are few other services (such as SQS for example that we use). Authentication is done by means of Telegram Auth, so users can only see their data when navigating to our web app through Telegram link. Our frontend is pretty simple for now and is build with JS, Vue and Vuetify. Communication between backend and frontend is done with GraphQL.

Hope this helps :slight_smile:
Anna from moodspot.

Thank you for your response, as well as the information about your stack. I have worked with Vue and it’s excellent to see such a practical use case for the Framework. If you do write a larger post with a fuller description of the technologies you use, please share it here. I’d be interested in learning more.

I’m teaching myself Full Stack Web Development, and QS apps like yours are perfect learning opportunities. I wish you the best of luck.

Dear Bret, thank you so much for good wishes!
And you are absolutely right, while working on this project over last two years we learned a fortune :slight_smile: