Olly
— Platform Architecture
Top-down data flow: user request → frontend → gateway → services → data stores
Clients
User-facing applications
◯
Member Portal
React SPA • Keycloak ROPC
◯
Employer Portal
React SPA • Keycloak PKCE
◯
Admin Console
Next.js • react-admin
◯
Mobile App
Expo • iOS + Android
◯
Triage Chat
React SPA • streaming
◯
Broker Portal
Web app
HTTPS • JWT Bearer
Edge / Gateway
TLS termination, auth, routing
◆
Nginx
*.dev.hiolly.com • TLS • 17 vhosts
◆
Apache APISIX
:9080
11 routes • prefix-strip • CORS • x-market plugin
◆
Keycloak
:8093
OIDC/SAML • realm: olly • JWKS validation
HTTP • stripped prefix • auth header forwarded
Application Services
14 Go microservices • chi • GORM • OTel instrumented
Insurance Core
policy-admin
:4007
Parties, accounts, products, market profiles
enrollment
:4003
Quotes, policies, transactions
claims
:4001
Submission, adjudication, prior-auth
billing
:4004
Charges, invoices, payments, EOB, ledger
eligibility
:4002
Coverage checks, member eligibility
Member & Group
member-portal-api
:4014
BFF — aggregates /me/* endpoints
group-scheme
:4010
Schemes, bulk enrollment
broker-api
:4011
Quotes, portfolio, commissions
notifications
:4006
Email, push, SMS • preferences
consent
:4012
Consent management
Provider & Care
provider
:4005
Network, credentialing
care
:4009
Care pathways
triage
:4008
AI symptom assessment • LLM
document-service
:4013
Document generation • templates
Outbox → Kafka publish • async events
Kafka Event Bus
enrollment-events
claims.*
billing.*
eligibility.*
provider.*
care-events
document-events
KRaft • outbox pattern • saga coordination
GORM • Goose migrations • connection pooling
Data Stores
Persistence layer
▢
PostgreSQL 16
:5432
1 schema per service • Goose migrations
▢
Valkey (Redis)
:16379
Cache • sessions • rate limits
▢
OpenSearch
:9200
Provider directory • ICD-10 • audit
▢
Temporal
:7233
Durable workflows • credentialing • dunning
▢
OpenBao
:8200
Secrets • dynamic DB credentials
OTel spans • metrics • logs
Observability
Cross-cutting — collects from all layers above
◉
OTel Collector
:4317
gRPC + HTTP • all services
◉
Grafana
:3010
Dashboards
◉
Prometheus
:9090
Metrics
◉
Tempo
:3200
Traces
◉
Loki
:3100
Logs
◉
Gatus
:8099
Health checks
EDI / HL7 • external APIs
External Integrations
Third-party systems & protocols
⇄
Mirth Connect
:8443
EDI: 837, 834, 835, 270/271
⇄
Groq LLM
qwen3-32b • triage AI
⇄
Clearinghouses
Claims submission • remittance
⇄
Mailpit / SendGrid
:8025
Email (dev / prod)
⇄
MCP Server
:3100
Claude Code tooling
⇄
Scalar
:8098
OpenAPI docs