Skip to content

Repository files navigation

NAMASTE-ICD: FHIR Terminology Service

A demonstration-ready microservice designed to bridge the gap between traditional Indian medicine (AYUSH NAMASTE) and the World Health Organization's ICD-11 TM2 classification system. This service provides a FHIR-based API for terminology mapping and data exchange.

Features

  • Concept Mapping: Seamlessly map NAMASTE concepts to their corresponding ICD-11 equivalents.
  • FHIR Procedures: Utilize standard FHIR ValueSet $expand and ConceptMap $translate operations.
  • Data Loading: Easily update the in-memory NAMASTE CodeSystem with your own CSV data.
  • Demo-Ready: Comes with pre-seeded data, allowing immediate exploration without external credentials.

Getting Started

To get a local copy up and running, follow these simple steps.

Prerequisites

  • Node.js (v18 or later)
  • npm or pnpm

Installation

  1. Clone the repository:
    git clone https://github.com/your_username_/namaste-icd.git
  2. Install NPM packages:
    npm install
    or
    pnpm install
  3. Run the development server:
    npm run dev
    or
    pnpm dev

Open http://localhost:3000 with your browser to see the result.

Usage

The application provides a user-friendly interface to explore its features.

  • Live Demo: Visit the /demo page for a hands-on experience with the terminology service.
  • Dual Search: Search for NAMASTE and ICD-11 concepts.
  • API Playground: Directly interact with the FHIR APIs for ValueSet expansion and ConceptMap translation.

API Endpoints

The following API endpoints are available:

  • GET /api/health: Returns the health status of the service.
  • GET /api/terminology/search?q={query}: Search for NAMASTE concepts.
  • GET /api/icd11/search?q={query}: Search for ICD-11 concepts.
  • POST /api/fhir/ValueSet/$expand: Expand a FHIR ValueSet.
  • POST /api/fhir/ConceptMap/$translate: Translate a concept from one system to another.
  • POST /api/terminology/ingest: Ingest NAMASTE concepts from a CSV file.
  • POST /api/fhir/bundle: Validate a FHIR bundle.

Configuration

The application can be configured using environment variables:

  • ICD11_BASE_URL: (Optional) The base URL for the WHO ICD-11 API.
  • ICD11_API_TOKEN: (Optional) The API token for the WHO ICD-11 API.
  • JWT_SECRET: (Optional) A secret key for JWT verification.

Authentication

For demo purposes, most endpoints are open. For write operations and production deployments, JWT-based authentication can be implemented. The demo provides a simple mechanism to generate and use a JWT token for testing authenticated requests.

License

Distributed under the MIT License. See LICENSE for more information.

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages