Skip to content

venkatavarshith999/therapist-match

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧠 TherapistMatch Platform

Simplifying Mental Health Care Access

A full-stack web application for finding, comparing, and booking verified therapists.


📁 Project Structure

therapistmatch/
├── frontend/
│   ├── index.html    ← Full website (HTML)
│   ├── style.css     ← Dark theme styles
│   └── app.js        ← Frontend JavaScript
└── backend/
    ├── server.js     ← Express REST API
    └── package.json

🚀 Getting Started

Frontend Only (static)

Open frontend/index.html directly in any browser. No setup needed.

With Backend (full stack)

cd backend
npm install
node server.js
# → http://localhost:3000

🌐 API Endpoints

Method Endpoint Description
GET /api/health Health check
GET /api/therapists List all therapists
GET /api/therapists?specialization=anxiety&maxPrice=900 Filter therapists
GET /api/therapists/:id Single therapist
GET /api/therapists/:id/availability Available slots
POST /api/bookings Create a booking
GET /api/bookings All bookings
DELETE /api/bookings/:id Cancel booking
POST /api/quiz/match Match from onboarding quiz

Filter Query Params (GET /api/therapists)

  • specialization — e.g. anxiety, trauma, depression
  • minPrice / maxPrice — integer (INR)
  • modevideo | phone | inperson
  • language — e.g. Hindi, Tamil
  • sortprice_asc | price_desc | rating

Example: Book a Session

curl -X POST http://localhost:3000/api/bookings \
  -H "Content-Type: application/json" \
  -d '{
    "therapist": "Dr. Meera Rajan",
    "slot": "10:00 AM",
    "day": 15,
    "month": "May",
    "sessionType": "video",
    "name": "Priya Sharma",
    "email": "priya@example.com"
  }'

🎨 Website Pages / Sections

Section Description
Home Hero with stats, floating therapist cards
Services 6 core features with icons
Therapists Filterable grid of 6 verified profiles
About Company history timeline + values + team
Book Session Interactive calendar & time slot picker
Testimonials 3 patient reviews

🛠 Tech Stack

Layer Tech
Frontend HTML5, CSS3, Vanilla JS
Fonts Syne (headings), DM Sans (body)
Colors Dark: #09090f · Violet: #7c5cfc · Teal: #00e5c3 · Rose: #ff6b8a
Backend Node.js + Express
Database In-memory (swap for MongoDB/PostgreSQL)

🔧 Adding a Real Database

Replace the in-memory arrays in server.js with:

  • MongoDB: Use mongoose package
  • PostgreSQL: Use pg or prisma package
  • Firebase: Use Firebase Admin SDK

Made with 💜 for TherapistMatch UX Project #11

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors