Skip to content

virgoeun/WD-PR2-BAM

Repository files navigation

Express App Project

"Hugger - Online Community for Mental Health"

Alt text

Deployment Link


Our Aspiration

We envision a world where individuals can openly discuss mental health topics and inspire positive change, all while feeling safe, accepted, and empowered.

Alt text

What Problem Does it Solve?

Hugger provides a secure and compassionate digital platform where people can connect, learn, and grow together in their mental health journeys. Users get informative resources, have meaningful discussions, and support each other, to break the stigma surrounding mental health and promote mental well-being.

Main Functionality

  • Hugger is based on Express App
  • Mongoose Models for data modelings & dadtabase communication
  • Cloudinary for user media management (database)
  • Axios for HTTP client requests(Javascript) & external API service
  • CRUD(Create, Read, Update, Delete) implementation
  • Multiple endpoints(routes) managements (GET/POST method)
  • Handlebars as viewengine for renderings
  • Session & Cookie management
  • User login/out & #
  • User Authentication & Authorization
  • CSS: Bootstrap 5.0.2v (Reponstive design)

Backlog

  • Comment threads
  • Live Post Update Feature
  • Social Media Login
  • Social Media Share & Likes
  • Journal Password
  • Live Chat Functions
  • Video Post DB

Technologies Used

  • HTML
  • CSS
  • JavaScript
  • OOP (Object Oriented Programming)
  • Node.JS
  • Express.Js
  • Handlebars
  • Mongo DB & Mongoose
  • Axios (external API)
  • Cloudinary
  • Github

User Flow

UserFlow

Session Expries every 1hour

  1. User Enter
  2. Login or #
  3. Guest User Access denied to Community & Profile Page
    • Redirect to the # Page
  4. LoggedIn user accesses to Profie Dashboard
  5. LoggedIn user accesses to private Journal page
  6. LoggedIn user accesses to Community page
  7. LogOut is possible from No.4 to No.6 journey

Project Structure

Models

  • User model (Ref: Post & Journal)
  • Post model (Ref: User & Comment)
  • Comment model (Ref: User)
  • Journal model (Ref: User)

Routes

  • Login/Logout routes
  • # route
  • Profile routes: CRUD actions
  • Post routes: CRUD actions
  • Comment routes: CRUD actions
  • Journal routes: CRUD actions
  • About routes

Views (hbs)

  • Layout
  • Index(Main)
  • Abous Us
  • Login
  • #
  • Journal: Create, Edit, Details, Delete, List
  • Post: Create, Edit, Details, Delete, List
  • User: Edit(profile)
  • Not-found
  • Error

Configuration

  • Claudinary Configuration
  • Session Configuration
  • Express App

3rd Party API

Middleware

  • Login Authorization & Authentication

Cloudinary

MongoDB & Mongoose

  • Database

.env

  • Port
  • API URL
  • MongoDB URL
  • Session Secret
  • Cloudinary Key & Secret

Extra Links

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published