Mind Quest Leveling (MQL) is a web application that integrates gamification with mental health support. The app helps users manage their goals and make the most of their free time by engaging in enjoyable, game-like activities. It features automatic character creation based on user input, tailored quest assignments to encourage positive behavior, and rewards for completing quests, such as new items. The application is built using Angular and ThreeJS for the frontend, with NodeJS and MongoDB handling the backend.
- Create an account with secure password standards.
- Automatically generate a character and assign an RPG class based on lifestyle.
- Change the assigned RPG class.
- Input personality type based on the 16 personality test.
- Earn experience points (XP) from completing the quests.
- Quests are predefined according to the user’s assigned class.
- Designed to motivate and reinforce positive behaviors.
- Includes universal quests like meditation or self-improvement tasks.
- Receive an Adventure Chest after completing quests.
- Chests contain various rewards such as new weapon skins, items and cosmetics.
- Items are classified by rarity: Basic, Heroic, Mythic, Legendary.
- Rewards from quests include new character designs, weapon skins, and cosmetics.
- Items are classified by rarity (Basic, Heroic, Mythic, Legendary).
- Organize and sort items within the inventory.
- Browser Pop-ups: Get notifications for available quests or reminders.
- Tasks: Engage in psychological tasks, mindfulness exercises, and educational content.
- Angular: Main framework for building the user interface.
- ThreeJS: For rendering 3D graphics.
- NodeJS: Server-side logic.
- MongoDB: Database management.
- Navigate to the project directory.
- Run
ng serve
to start the development server. - Open
http://localhost:4200/
in your browser. The application will reload automatically with changes to the source files.
- Run
ng build
to compile the project. The build artifacts will be stored in thedist/
directory.
- Unit Tests: Run
ng test
using Karma to execute unit tests. - End-to-End Tests: Run
ng e2e
for end-to-end tests. You need to install a package that supports e2e testing first.
- Navigate to the
/server/
directory. - Run
npm install
to install server dependencies.
- Start the server with
node server.js
.