fhenix

command module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 28, 2024 License: Apache-2.0, MIT Imports: 6 Imported by: 0

README

Fhenix

Continuous Integration GitHub Release Gitter Channel readthedocs Godocs

Fhenix is a flexible and lightweight tool for generating content from a modeling of a FHIR IG's definitional entries.

This leverages packages as defined in the Simplifier registry, parses their relevant entities (StructureDefinition, CodeSystem, and ValueSet), constructs a model of these entities, and then feeds it into Go templates to generate content.

Check out our examples!

Quick Start

Use

This tool is intended for producing content off of modeled FHIR definitional resources. This can be used for:

  • Code generation, to create custom bindings for organizational profiles
  • Documentation generation, to create custom documentation for IGs
  • Data generation, to create test data based on profiles

Some practical projects leveraging this within Friendly FHIR:

Installing

go install github.com/friendly-fhir/fhenix@latest

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Package config provides a mechanism for loading and consuming configuration file formats for Fhenix projects.
Package config provides a mechanism for loading and consuming configuration file formats for Fhenix projects.
internal/cfg
Package cfg provides shared configuration that are used across different versions of Fhenix configurations.
Package cfg provides shared configuration that are used across different versions of Fhenix configurations.
internal/cfg/v1
Package cfg contains the raw config data as is parsed directly from YAML.
Package cfg contains the raw config data as is parsed directly from YAML.
internal/opts
Package opts provides default option configuration used internally for configuration dispatching.
Package opts provides default option configuration used internally for configuration dispatching.
Package driver is the primary driver behind the application.
Package driver is the primary driver behind the application.
job
Package job handles conversions from configuration format into a collection of jobs that can be executed by the driver in parallel.
Package job handles conversions from configuration format into a collection of jobs that can be executed by the driver in parallel.
Package filter provides a mechanism for filtering files to be included or excluded from processing, and leverages the [config.TransformFilter] for its base definition.
Package filter provides a mechanism for filtering files to be included or excluded from processing, and leverages the [config.TransformFilter] for its base definition.
internal
ansi
Package ansi provides a light abstraction around ANSI color codes.
Package ansi provides a light abstraction around ANSI color codes.
dedent
Package dedent provides a utility for dedenting multiline strings.
Package dedent provides a utility for dedenting multiline strings.
set
snek
Package snek provides a simplified, slimmed-down wrapper around the cobra CLI library.
Package snek provides a simplified, slimmed-down wrapper around the cobra CLI library.
templatefuncs
Package templatefuncs provides a set of template functions that are used in the internal template package.
Package templatefuncs provides a set of template functions that are used in the internal template package.
conformance
Package conformance provides the FHIR Conformance Module definition.
Package conformance provides the FHIR Conformance Module definition.
conformance/definition
Package definition provides the raw definitions for FHIR data types.
Package definition provides the raw definitions for FHIR data types.
registrytest
Package registrytest provides test-doubles and fakes for the [registry.Client] and other related types.
Package registrytest provides test-doubles and fakes for the [registry.Client] and other related types.
Package config provides a mechanism for loading and consuming configuration file formats for Fhenix projects.
Package config provides a mechanism for loading and consuming configuration file formats for Fhenix projects.
internal/template
Package template is an abstraction over the builtin 'template' package by allowing either HTML or Text to be selected as the basic mechanism.
Package template is an abstraction over the builtin 'template' package by allowing either HTML or Text to be selected as the basic mechanism.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL