Note: Replace
OWNERin the badge URLs below with your GitHub username or organization name.
A HIPAA-compliant healthcare management platform built with Next.js, Express, and Stellar blockchain integration for secure patient data management and payment processing.
- π₯ Patient management with comprehensive health records
- π Medical encounter tracking and documentation
- π³ Blockchain-based payment processing via Stellar
- π HIPAA-compliant authentication and authorization
- π Internationalization support (English, French)
- π¨ Modern, accessible UI with Tailwind CSS
- π Real-time data synchronization with React Query
- Frontend: Next.js 14, React 18, TypeScript, Tailwind CSS
- Backend: Express.js, Node.js, TypeScript
- Database: MongoDB
- Blockchain: Stellar (testnet/mainnet)
- Authentication: JWT with refresh tokens
- Monorepo: npm workspaces with Turbo
- Node.js >= 18.0.0
- npm 10.9.2
- Docker and Docker Compose
No local MongoDB installation required. Spin up just the database:
# 1. Clone the repository
git clone https://github.com/OWNER/health-watchers.git
cd health-watchers
# 2. Copy environment configuration
cp .env.example .env
# 3. Start MongoDB (and optional mongo-express UI on :8081)
docker-compose -f docker-compose.dev.yml up -d
# 4. Install dependencies and start the API
npm install
npm run dev --workspace=apiThe default MONGO_URI=mongodb://localhost:27017/health_watchers in .env.example connects directly to the containerized MongoDB β no credentials needed for local dev.
To stop:
docker-compose -f docker-compose.dev.yml downRuns all services (API, web, stellar-service, MongoDB) in containers:
# 1. Clone the repository
git clone https://github.com/OWNER/health-watchers.git
cd health-watchers
# 2. Copy environment configuration
cp .env.example .env
# 3. Start all services
docker-compose up -d
# 4. Access the application
# Web UI: http://localhost:3000
# API: http://localhost:3001To stop all services:
docker-compose downIf you prefer to run services individually:
# 1. Install dependencies
npm install
# 2. Set up environment variables
cp .env.example .env
# Edit .env with your configuration
# 3. Start MongoDB (if not using Docker)
# macOS: brew services start mongodb-community
# Linux: sudo systemctl start mongod
# Windows: net start MongoDB
# 4. Seed the database (optional)
npm run seed
# 5. Start development servers
npm run devThis will start:
- Web app on http://localhost:3000
- API server on http://localhost:3001
- Stellar service on http://localhost:3002
health-watchers/
βββ apps/
β βββ api/ # Express.js REST API
β βββ web/ # Next.js frontend application
β βββ stellar-service/ # Stellar blockchain integration
βββ packages/ # Shared packages (types, utils)
βββ scripts/ # Database seeding and utilities
βββ .env.example # Environment configuration template
βββ docker-compose.yml # Docker orchestration
npm run dev # Start all apps in development mode
npm run build # Build all apps for production
npm run start # Start all apps in production mode
npm run lint # Run linting across all apps
npm run seed # Seed database with sample dataSee .env.example for a complete list of required environment variables. Key variables include:
MONGO_URI- MongoDB connection stringJWT_ACCESS_TOKEN_SECRET- JWT signing secretSTELLAR_NETWORK- Stellar network (testnet/mainnet)GEMINI_API_KEY- Google Gemini API for AI featuresNEXT_PUBLIC_API_URL- API endpoint for frontend
Health Watchers is designed with HIPAA compliance in mind:
- π End-to-end encryption for sensitive data
- π Secure JWT-based authentication
- π Comprehensive audit logging
- π Regular security updates and dependency scanning
- π‘οΈ Input validation and sanitization
- π Secrets management with AWS Secrets Manager support
For detailed security guidelines, see SECURITY.md.
# Run all tests
npm test
# Run tests with coverage
npm run test:coverage
# Run tests in watch mode
npm run test:watch# Build production images
docker-compose -f docker-compose.prod.yml build
# Start production services
docker-compose -f docker-compose.prod.yml up -d# Build all applications
npm run build
# Start production servers
npm run startWe welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
For questions, issues, or feature requests:
- π§ Email: support@healthwatchers.com
- π Issues: GitHub Issues
- π Documentation: Wiki
- Built with Next.js
- Blockchain integration powered by Stellar
- UI components inspired by modern design systems
- HIPAA compliance guidance from healthcare industry standards
Made with β€οΈ by the Health Watchers team