Skip to content
/ TheraBot Public

TheraBot is a therapeutic chatbot application built with React and Node.js that provides users with mental health support through AI-powered conversations.

License

Notifications You must be signed in to change notification settings

Hum2a/TheraBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

40 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

TheraBot πŸ€–

Build Status Coverage License Version Stars

TypeScript React Next.js OpenAI

🧠 AI-Powered Mental Health Support Platform

Demo β€’ Documentation β€’ Contributing β€’ Support


🌟 Features

Core Capabilities

  • πŸ€– Advanced NLP for emotional understanding
  • 🌍 Real-time translation (20+ languages)
  • πŸ”’ End-to-end encryption
  • 🎯 Personalized therapy approaches
  • πŸ“Š Progress tracking & analytics
  • πŸ”„ 24/7 continuous learning
  • 🧠 CBT & DBT techniques
  • 🚨 Crisis detection & support

Technical Stack

  • βš›οΈ React 18 with Server Components
  • πŸ“‘ WebSocket real-time communication
  • πŸ”‘ JWT authentication & RBAC
  • 🌐 Edge computing deployment
  • πŸ“± Progressive Web App (PWA)
  • πŸ” Elasticsearch integration
  • πŸš€ Redis caching layer
  • πŸ›‘οΈ HIPAA compliance ready

πŸš€ Quick Start

Prerequisites

node >= 18.0.0
npm >= 9.0.0
docker >= 24.0.0

Installation

  1. Clone & Install
git clone https://github.com/yourusername/TheraBot.git
cd TheraBot
npm install
  1. Environment Setup
cp .env.example .env.local

# Configure your environment variables
  1. Development
npm run dev

# Visit http://localhost:3000
  1. Docker Deployment
docker compose up -d

# Available at http://localhost:3000

πŸ—οΈ Architecture

graph TD
    A[Client] -->|WebSocket| B[API Gateway]
    B -->|gRPC| C[Auth Service]
    B -->|gRPC| D[Chat Service]
    D -->|REST| E[OpenAI API]
    D -->|Pub/Sub| F[Redis]
    D -->|Document| G[MongoDB]
    C -->|Cache| F
    C -->|Document| G
Loading

πŸ› οΈ Tech Stack

Frontend Technologies
  • Framework: Next.js 13 (App Router)
  • Language: TypeScript 4.9
  • State Management: Zustand + React Query
  • Styling: Tailwind CSS + Framer Motion
  • Testing: Jest + React Testing Library
  • Build Tool: Turborepo
Backend Services
  • Runtime: Node.js (Express)
  • API: gRPC + REST
  • Database: MongoDB (primary)
  • Cache: Redis (distributed)
  • Search: Elasticsearch
  • Message Queue: RabbitMQ
DevOps & Infrastructure
  • CI/CD: GitHub Actions
  • Containers: Docker + Kubernetes
  • Monitoring: Prometheus + Grafana
  • Logging: ELK Stack
  • Cloud: AWS (multi-region)
  • CDN: Cloudflare

πŸ“Š Performance Metrics

Metric Value Status
Response Time <100ms βœ…
Availability 99.99% βœ…
Error Rate <0.01% βœ…
Concurrent Users 100k+ βœ…
Data Encryption AES-256 βœ…

πŸ” Security

  • πŸ›‘οΈ SOC 2 Type II Certified
  • πŸ”’ HIPAA Compliant
  • 🌐 GDPR Ready
  • πŸ”‘ 2FA Enabled
  • πŸ“ Security Audit Logs
  • 🚫 DDoS Protection
  • πŸ” Regular Penetration Testing
  • πŸ” Data Encryption at Rest & in Transit

πŸ§ͺ Testing

# Unit Tests

npm run test

# Integration Tests

npm run test:integration

# E2E Tests

npm run test:e2e

# Load Tests

npm run test:load

πŸ“ˆ API Performance

interface APIMetrics {
  responseTime: '<100ms';
  throughput: '10k req/s';
  errorRate: '<0.01%';
  availability: '99.99%';
}

🌐 Deployment

# kubernetes/production.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: therabot
spec:
  replicas: 3
  selector:
    matchLabels:
      app: therabot
  template:
    metadata:
      labels:
        app: therabot
    spec:
      containers:
      - name: therabot
        image: therabot:latest
        ports:
        - containerPort: 3000

πŸ”„ CI/CD Pipeline

graph LR
    A[Push] -->|Trigger| B[Build]
    B --> C[Test]
    C --> D[Lint]
    D --> E[Security Scan]
    E --> F[Deploy Staging]
    F -->|Manual Approval| G[Deploy Production]
Loading

πŸ“š Documentation

🀝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

Good First Issues

  • πŸ› Bug fixes
  • πŸ“ Documentation
  • 🎨 UI/UX improvements
  • ✨ Feature requests

Major Contributions

  • πŸ—οΈ Architecture changes
  • πŸš€ Performance improvements
  • πŸ”’ Security enhancements
  • 🌐 Internationalization

πŸ“„ License

TheraBot is licensed under the MIT License.


Website β€’ Documentation β€’ Blog β€’ Twitter

Made with ❀️ by the TheraBot Team

About

TheraBot is a therapeutic chatbot application built with React and Node.js that provides users with mental health support through AI-powered conversations.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published