Simplifying Mental Health Care Access
A full-stack web application for finding, comparing, and booking verified therapists.
therapistmatch/
├── frontend/
│ ├── index.html ← Full website (HTML)
│ ├── style.css ← Dark theme styles
│ └── app.js ← Frontend JavaScript
└── backend/
├── server.js ← Express REST API
└── package.json
Open frontend/index.html directly in any browser. No setup needed.
cd backend
npm install
node server.js
# → http://localhost:3000| 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 |
specialization— e.g.anxiety,trauma,depressionminPrice/maxPrice— integer (INR)mode—video|phone|inpersonlanguage— e.g.Hindi,Tamilsort—price_asc|price_desc|rating
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"
}'| 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 |
| 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) |
Replace the in-memory arrays in server.js with:
- MongoDB: Use
mongoosepackage - PostgreSQL: Use
pgorprismapackage - Firebase: Use Firebase Admin SDK
Made with 💜 for TherapistMatch UX Project #11