Hospital Information Management System (HIMS) with LIS integration & BullMQ background workers
143
Medsphere HIMS is an enterprise-grade Hospital Information and Management System built with Next.js 16, React 19, Prisma 7, PostgreSQL, and BullMQ. It features full electronic medical records (EMR), patient admission-discharge-transfer (ADT), outpatient/inpatient workflows, pharmacy inventory, billing, Razorpay integration, and bidirectional LIS integration via Labsync.
nextjs:nodejs), Zero known CVE vulnerabilities (npm audit clean).docker run -d \
--name hims-app \
-p 3000:3000 \
-e DATABASE_URL="postgresql://user:password@postgres:5432/hims?schema=public" \
-e NEXTAUTH_SECRET="your-32-char-random-secret" \
-e NEXTAUTH_URL="http://localhost:3000" \
krrishmahar/hims:0.2.0
A complete deployment with PostgreSQL and Redis:
version: '3.8'
services:
postgres:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_USER: hims_user
POSTGRES_PASSWORD: hims_password
POSTGRES_DB: hims
volumes:
- postgres_data:/var/lib/postgresql/data
ports:
- "5432:5432"
redis:
image: redis:7-alpine
restart: unless-stopped
ports:
- "6379:6379"
volumes:
- redis_data:/data
hims-web:
image: krrishmahar/hims:0.2.0
restart: unless-stopped
depends_on:
- postgres
- redis
ports:
- "3000:3000"
environment:
- NODE_ENV=production
- PORT=3000
- HOSTNAME=0.0.0.0
- DATABASE_URL=postgresql://hims_user:hims_password@postgres:5432/hims?schema=public
- NEXTAUTH_URL=http://localhost:3000
- NEXTAUTH_SECRET=generate_a_secure_random_key_here
- REDIS_URL=redis://redis:6379
# Optional: Labsphere LIS integration
- LABSPHERE_APP_URL=https://labsphere-med.vercel.app
- LABSPHERE_SSO_AUDIENCE=https://labsphere-med.vercel.app
- HIMS_TO_LABSPHERE_SSO_SECRET=your_shared_sso_secret
# Background Queue Worker Dyno (BullMQ)
hims-worker:
image: krrishmahar/hims:0.2.0
restart: unless-stopped
command: ["node", "workers/runner.js"]
depends_on:
- postgres
- redis
environment:
- NODE_ENV=production
- DATABASE_URL=postgresql://hims_user:hims_password@postgres:5432/hims?schema=public
- REDIS_URL=redis://redis:6379
volumes:
postgres_data:
redis_data:
| Variable | Required | Description |
|---|---|---|
DATABASE_URL | Yes | PostgreSQL connection string (postgresql://...) |
NEXTAUTH_SECRET | Yes | Random 32+ character string for JWT session encryption |
NEXTAUTH_URL | Yes | Public canonical URL of the application |
REDIS_URL | Optional | Redis connection URL for BullMQ job processing |
LABSPHERE_APP_URL | Optional | Endpoint URL for the connected Labsphere LIS instance |
LABSPHERE_SSO_AUDIENCE | Optional | SSO Audience domain for laboratory ticket validation |
HIMS_TO_LABSPHERE_SSO_SECRET | Optional | Shared HMAC secret for cross-application single sign-on |
RAZORPAY_KEY_ID | Optional | Razorpay payment gateway Key ID |
RAZORPAY_KEY_SECRET | Optional | Razorpay payment gateway Key Secret |
| Tag | Notes |
|---|---|
0.2.0, latest | Stable release with Zod 4, Next.js 16.4.3 standalone bundle, zero CVE vulnerabilities |
0.2.0-0b85d80 | Pinned git commit release 0b85d80 |
0.1.0 | Initial release |
node:22-alpine (Minimal musl-based container footprint)nextjs:nodejs, UID 1001)/app/prisma for zero-downtime runtime migration execution (npx prisma migrate deploy)node_modules overheadContent type
Image
Digest
sha256:275acb4bb…
Size
100.4 MB
Last updated
about 8 hours ago
docker pull krrishmahar/hims