Skip to content

Depression Diagnoser is a web application that assesses and diagnoses depression levels through user responses and facial expression analysis, providing a personalized evaluation.

Notifications You must be signed in to change notification settings

Mahmood-Anaam/nextjs-depression-diagnoser

Repository files navigation

Depression Diagnoser

Vercel

Depression Diagnoser is an advanced web application designed to assess and diagnose the levels of depression in users. By analyzing user responses and facial expressions, the app provides a personalized evaluation of the user's mental health and offers options for seeking professional help.

Features

  • User Authentication: Secure sign-up, sign-in, and password recovery functionality to protect user accounts.
  • Interactive Questionnaire: Users answer a series of questions designed to evaluate their mental state.
  • Facial Expression Analysis: Uses face-api.js to detect and analyze facial expressions during the questionnaire.
  • Real-time Speech Recognition: Users can answer questions using voice commands, with responses recognized and processed instantly.
  • Dynamic Results: Based on user inputs and expressions, the app calculates and displays the depression level.
  • Consultation Booking: Users can book consultations with mental health professionals directly through the app.

Demo

Try the live version of the app here: Depression Diagnoser

Getting Started

Prerequisites

  • Node.js and npm installed
  • PostgreSQL database

Installation

  1. Clone the repository:
git clone https://github.com/Mahmood-Anaam/nextjs-depression-diagnoser.git
cd nextjs-depression-diagnoser
  1. Install dependencies:
npm install
  1. Set up environment variables:

Create a .env file in the root directory and add the following environment variables:

DATABASE_URL=your_database_url
JWT_SECRET=your_jwt_secret
NODE_ENV=development
SMTP_HOST=your_smtp_host
SMTP_PORT=your_smtp_port
SMTP_USER=your_smtp_user
SMTP_PASS=your_smtp_pass

Environment Variables

  • DATABASE_URL: Connection string for the PostgreSQL database.
  • JWT_SECRET: Secret key for JWT authentication.
  • NODE_ENV: Defines the environment (development or production).
  • SMTP_HOST: Hostname of the SMTP server for sending emails.
  • SMTP_PORT: Port used by the SMTP server.
  • SMTP_USER: Username for SMTP authentication.
  • SMTP_PASS: Password for SMTP authentication.

Running the App

Start the development server:

npm run dev

The app will be running on http://localhost:3000.

Technologies Used

  • Next.js: A React framework for server-side rendering and static site generation.
  • Tailwind CSS: A utility-first CSS framework for styling.
  • Prisma: A modern ORM for database interaction in Node.js.
  • Face-api.js: A library for face detection and facial expression recognition.
  • React Speech Recognition: A library for integrating speech recognition into React apps.
  • Nodemailer: A Node.js module for sending emails.

About

Depression Diagnoser is a web application that assesses and diagnoses depression levels through user responses and facial expression analysis, providing a personalized evaluation.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published