A library and microservice implementing SNOMED CT with fast search, inference, cross-mapping, and ECL support.
Hermes is a library and microservice that implements SNOMED CT, the international standard for clinical terminology. It provides tools for fast full-text search, inference, cross-mapping to other code systems, and support for SNOMED CT's Expression Constraint Language (ECL). The project solves the problem of accessing and reasoning with SNOMED CT data in a lightweight, scalable manner without external dependencies.
Healthcare software developers, clinical informaticians, and organizations building electronic health records (EHRs), clinical decision support systems, or analytics pipelines that require SNOMED CT integration.
Developers choose Hermes for its speed, simplicity, and flexibility—it imports and indexes SNOMED CT in minutes, runs as a standalone microservice or embeddable library, and has no runtime dependencies beyond a filesystem. Its support for ECL, OWL reasoning, and cross-mapping makes it a comprehensive terminology solution.
A library and microservice implementing the health and care terminology SNOMED CT with support for cross-maps, inference, fast full-text search, autocompletion, compositional grammar and the expression constraint language.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Imports and indexes SNOMED CT International and UK editions in less than 5 minutes, as highlighted in the README, enabling quick setup.
Operates read-only with no external dependencies beyond a filesystem, simplifying deployment from laptops to scaled production, per the philosophy section.
Implements full ECL v2.2, OWL reasoning, and cross-mapping to systems like ICD-10, enabling advanced terminology operations without heavy tools.
Benchmarks show over 33,000 requests per second with low latency, and it scales horizontally by running multiple instances, as demonstrated in load testing.
Can be embedded as a JVM library or run as a standalone microservice with HTTP, MCP, and optional FHIR APIs via Hades, offering versatility.
Cannot update SNOMED CT data at runtime; requires re-importing and restarting for new versions, which may disrupt continuous workflows.
Built on Clojure and requires Java 17+, adding overhead for non-JVM stacks and limiting integration in lightweight or embedded environments.
Automating downloads requires API keys or credentials for services like MLDS or TRUD, and manual steps are needed for unsupported platforms, increasing setup time.