Moodwave App Moodwave 心理健康应用
About
Moodwave was my final-year dissertation at the University of Galway, School of Computer Science — a full-stack mental health support app grounded in Cognitive Behavioral Therapy (CBT) research and targeted user studies.
The project spanned the full product lifecycle: literature review, user screening and research, design, front-end and back-end development, game development, and testing. Every feature decision traces back to research evidence or direct user feedback.
Problem
Mental health apps face a structural retention problem. Users download, try, and abandon — not because the tools don’t work, but because repeated self-reflection without engagement becomes a chore.
Solution
The core idea was to introduce interaction layers. A gamified module makes staying intrinsically rewarding — using physical movement as a mood intervention. At the same time, low-stakes community connection is provided to ease isolation without the pressure of direct social engagement.
Process
Who this is for
Rather than designing for “people with mental health needs” broadly, this project targeted a specific personality profile: individuals scoring low on extraversion and emotional stability in the Big Five model.
Research Foundation
The design methodology is grounded in CBT — Cognitive Behavioral Therapy — an evidence-based psychotherapy built on the relationship between thoughts, feelings, and behaviour. Three of its techniques map directly onto the features: self-monitoring (mood tracking), behavioural activation (the game), and graduated social exposure (the community). CBT not only informed which features to build, but how each one should work.
User Research
Participants were screened through a Big Five personality test, then completed a semi-structured questionnaire covering demographics, prior experience with mental health tools, feature preferences, and UI style. A total of 79 responses were collected. The feature options drew from CBT techniques and other evidence-based interventions identified during the literature review.
Design Decision
Based on CBT principles and the research findings, three features were selected — each chosen because it addresses a specific psychological mechanism, and also a user preference.
How It’s Built
The backend and frontend are separated by design — authentication, data, and business logic live server-side, leaving the frontend focused purely on UI. The game runs as a standalone module, because its rendering operates outside the frontend entirely.
Once the core flows were built, Selenium was used to automate end-to-end testing across critical user journeys — validating behaviour from a user-perspective lens before the usability sessions ran.



The Game Module
This is the most deliberate design response to the retention problem. The core idea: make the invisible visible.
Negative emotion as a concept is hard to engage with — abstract, diffuse, without shape or boundary. The game’s first design decision was to give it one. Each monster has a distinct colour and form, representing a kind of emotional state. Emotions aren’t good or bad — they exist to protect you. The game’s implicit message is that you can move through them.



The game is a peaceful side-scroller. The player controls a small hero jumping across platforms through a soothing landscape, hitting different emotions to score. Some emotions push your score up, others bring it down — and certain ones trigger stars, balloons, or fireworks.
There’s a timer, but the pace isn’t stressful. Randomised level elements ensure no two sessions feel identical, addressing one of the most common reasons mental health app features get used once and abandoned.
Learning Phaser from scratch was part of the project. The reason I chose it was pragmatic — a mature physics engine, an active community, and a build output that embeds cleanly into the existing app. Sprite assets were sourced from itch.io and Dotown, with custom sprites drawn in Pixilart.
The game went through several iterations — the final version is also published as a standalone title on itch.io ↗.
”Fun! The platformer controls were a lil tricky at times, but it was lovely seeing flowers and trees blossom where you collected happy emotions.”
curiousConductor · itch.io
”Cute game. Love the graphics, love the sounds. I like the concept — creative take on the theme — and your build is great.”
MishManners · itch.io
Usability Testing & Results
Five participants completed pre- and post-test surveys, performed key tasks across all features, and rated the app using the User Experience Questionnaire (UEQ). Per Nielsen’s research, five users are enough to surface around 85% of usability issues — a standard choice when balancing coverage against resource constraints.
Dependability scored a perfect 5.0 with zero variance — every participant agreed the system behaved exactly as expected. This reflects the investment in Selenium automated testing, which validated critical flows from a user-perspective lens before the usability sessions ran.
Two issues were surfaced and iterated on: confusion around the ‘mood board’ widget on the homepage (resolved by enlarging helper text and reducing visual density), and insufficient game instructions (resolved with contextual onboarding text).
Reflection
The most honest thing I can say about this project is that the emotion tracking feature — while functional and research-grounded — is a solved problem. By the time of writing, some apps on the market have raised the bar for what mood logging can feel like. If I were building this again, I’d spend less time on the logging interface and more on what happens after the log.
What I’m more proud of is the reasoning chain that connects the Big Five screening → CBT framework → feature set → visual language. The design didn’t emerge from intuition — it came from a documented chain of decisions, each traceable to evidence. That discipline is what I’d carry forward.
概述
Moodwave 是我在爱尔兰国立高威大学计算机科学学院的毕业设计课题——一款基于认知行为疗法(CBT)研究与针对性用户调研构建的全栈心理健康支持应用。
项目覆盖完整的产品生命周期:文献综述、用户筛选与调研、设计、前后端开发、游戏开发以及测试。每一个功能决策都能追溯到研究证据或用户的直接反馈。
问题定义
心理健康应用面临结构性的留存危机。用户下载、尝试、放弃——不是因为工具无效,而是因为反复的自我记录在缺乏参与感的情况下会变成一种负担。
解决方案
核心想法是引入多层交互。游戏化模块使持续使用本身就成为一种内在奖励——以身体运动作为情绪干预手段。同时,低风险的社群连接为孤立的用户提供支持,而无需直接社交的压力。
研究与设计过程
目标用户
本项目没有泛泛地面向”有心理健康需求的人”,而是针对特定人格画像:在大五人格模型中外倾性和情绪稳定性得分偏低的个体。
研究基础
认知行为疗法(CBT)是一种循证心理疗法,建立在思维、情绪与行为三者相互影响的理论基础之上。本项目的三个核心功能分别对应 CBT 的三种干预技术:自我监控(情绪追踪)、行为激活(游戏模块)、渐进式社交暴露(社区功能)。CBT 不仅提供了功能选择的依据,也定义了每个功能应该如何运作。
用户调研
参与者通过大五人格在线测试进行初步筛选,随后接受半结构化问卷,内容涵盖基本信息、心理健康工具使用经历、功能偏好和 UI 风格偏好。问卷共收到 79 份有效回复,功能选项综合参考了 CBT 治疗技术,以及文献综述阶段发现的其他循证心理干预方式。
设计决策
基于 CBT 原则与调研结果,三项核心功能被纳入设计——每一项都针对一种具体的心理机制,同时也回应了用户偏好。
应用构建
前后端分离设计——认证、数据与业务逻辑全部在服务端处理,前端专注于 UI 呈现。游戏作为独立模块运行,因为其渲染机制完全在前端体系之外。
核心流程开发完成后,使用 Selenium 对关键用户路径进行了端到端自动化测试,在可用性测试开始前从用户视角完成了行为验证。



游戏模块
这是针对留存率问题最主要的设计回应。核心想法:让看不见的东西变得可见。
“负面情绪”作为概念很难直接面对——抽象、弥散,没有形状,也没有边界。游戏的第一个设计决策,就是给它一个形状。每种怪物有独特的颜色与形态,对应不同的情绪。
情绪本身没有好坏之分,它们的存在是为了保护你。游戏传递的隐含信息是:你可以渡过它们。



这是一款平和的横版游戏。玩家操控一个小英雄穿越宁静的场景,沿途在平台上跳跃、击中各种情绪得分。有些情绪让你的分数上升,有些则让它下降,还会触发星星、气球或烟花效果。
游戏有定时,但节奏不紧张。关卡元素随机化保证每次游玩体验不完全相同,直接应对了心理健康应用功能”用一次就不用了”的核心问题。
从零开始学习 Phaser 是这个项目的一部分。选择它的原因很务实——成熟的物理引擎、活跃的社区,构建输出也可以直接嵌入现有应用。此外,游戏部分素材来自 itch.io 和 Dotown,自定义精灵在 Pixilart 中绘制。
游戏经历了多轮迭代——最终版本已作为独立游戏发布至 itch.io ↗。
“Fun! The platformer controls were a lil tricky at times, but it was lovely seeing flowers and trees blossom where you collected happy emotions.”
curiousConductor · itch.io
”Cute game. Love the graphics, love the sounds. I like the concept — creative take on the theme — and your build is great.”
MishManners · itch.io
可用性测试与结果
五名参与者完成了测试前后问卷、主要功能任务,并使用用户体验问卷(UEQ)对应用进行评分(1–5分制)。根据 Nielsen 的研究,5名用户足以发现约85%的可用性问题,在资源有限的情况下是兼顾覆盖率与成本的标准选择。
可靠性得分满分 5.0,方差为零——所有参与者一致认为系统行为完全符合预期。这直接反映了 Selenium 自动化测试的投入——在可用性测试开始前,所有关键流程已从用户视角完成验证。
测试发现了两处问题并进行了迭代:首页”情绪看板”组件引发困惑(通过放大说明文字、降低视觉密度解决),以及游戏缺乏操作说明(通过上下文引导文字解决)。
复盘
坦率地说,情绪记录功能——尽管有功能基础、有研究支撑——本质上是个已被解决的问题。写这篇文章时,市面上已有应用将情绪追踪做得很好。如果重新来过,我会把更少的精力放在记录界面上,更多地思考记录之后发生什么。
我更为之骄傲的,是那条从大五筛选 → CBT 框架 → 功能集 → 视觉语言的推理链。设计不是凭直觉生长出来的,而是来自一串可追溯的决策。这种思维方式,正是我未来会继续秉持的。