← กลับ

PHCIS Microservices (Go)

กำลังพัฒนา

Go microservices for PHCIS — SSO, core API, inventory, and consent management with GitOps deployment on Kubernetes via ArgoCD and Thai national ID integration

role: Backend Developer

GoPostgreSQLKubernetesArgoCDDockerGitHub ActionsBunElysiaJSMongoDB

Overview

Backend microservices for PHCIS (Primary Care Unit Health Information System), written entirely in Go and deployed via ArgoCD GitOps workflow on Kubernetes.

Each service owns its domain and communicates through internal APIs, allowing independent scaling and maintenance.

Services

ServiceLanguageDetails
phcis_mainGoCore PHCIS API — OPD, EMR, Pharmacy, Lab, Finance
phcis_ssoGoSingle Sign-On — SAML, ThaiID, Google, LINE
phcis_inventoryGoDrug and medical supply management
phcis_consentGoConsent / PDPA management
mylablinkGoHL7/LIS lab integration — lab results exchange between systems
myinventoryGoMedical equipment inventory

Thai National ID Authentication

thai-id-service-callback-bun-elysiajs-mongodb — identity verification via Thai national ID card, handling callbacks from the National Digital ID (NDID) platform.

Stack: Bun + ElysiaJS + MongoDB

Infrastructure

Container:     Docker
Registry:      registry.mih.co.th (self-hosted)
Orchestration: Kubernetes
GitOps:        ArgoCD (hcis-gitops repo)
  ├── argocd/  — ArgoCD Application definitions
  └── k8s/     — Kubernetes manifests
CI/CD:         GitHub Actions
Database:      PostgreSQL

Source code is a private repository within the multi-innovations-healthcare organization.