A tool for diff'ing this and OpenTHC lab metrics, creating their objects, and docs.

Overview

wcia-analytes-tool

Consumes OpenTHC Lab Metrics and WCIA Analytes, and produces diff objects and docs for use in WA State interop.

version 0.9.8


Getting Started

Prep

  1. Load the storage area with the OpenTHC Lab Metrics.
    Clone the https://github.com/openthc/api.git repository and copy its etc/lab-metric folder to this repository's storage/ folder (i.e., storage/lab-metric).

  2. Load the storage area with the WCIA analytes json files. Clone the https://github.com/conflabs/wcia-analytes.git repository and copy its json/ folder to this repository's storage/ folder (i.e., storage/json).

  3. From the CLI, run php makeOpenTHCResource.php to create the OpenTHC Json Resource.
    It is saved to the storage dir.


Find Missing OpenTHC Lab Metrics

From the CLI, run php makeNotInWciaList.php to create a list of OpenTHC lab metrics that are not in the WCIA list.

Convert Missing OpenTHC Lab Metrics to WCIA Analytes

From the CLI, run php makeNewWciaAnalytes.php to create a list of new WCIA analytes from the OpenTHC lab metrics list.


Find Missing WCIA Analytes

From the CLI, run php makeNotInOpenThcList.php to create a list of WCIA analytes that are not in the OpenTHC list.

Convert Missing WCIA Analytes to OpenTHC Lab Metrics

From the CLI, run php makeNewOpenThcLabMetrics.php to create a list of new OpenTHC stubs from the WCIA analytes list.


Create Documents

From the CLI, run php makeMarkDown.php to create a series of mark down docs in the storage/docs folder.


Unit Tests

The tests/ folder is a reflection of the src/ folder, but containing Unit Test classes. Run the unit tests from the CLI, like so: php vendor/bin/phpunit tests/.

Static Analysis

This project uses PHPStan for static analysis, and at a default level of 5. Run the analyser from the CLI like so, vendor/bin/phpstan analyse --level 5 src.


Docker

For simple, reproducible server environments, I've included a Dockerfile for creating a quick CLI environment with which to run these scripts.

Docker Build

docker build -f Dockerfile -t wcia/analytes-generator:latest .

Docker Run CLI

docker run -it --rm -v $PWD:/srv wcia/analytes-generator:latest bash

Docker Run Unit Tests

docker run -it --rm -v $PWD:/srv wcia/analytes-generator:latest php vendor/bin/phpunit tests/

Docker Run Static Analysis

docker run -it --rm -v $PWD:/srv wcia/analytes-generator:latest vendor/bin/phpstan analyse --level 5 src

You might also like...
A fast Directus docs search workflow for Alfred
A fast Directus docs search workflow for Alfred

Directus Docs Workflow for Alfred A fast Directus docs search workflow for Alfred. Adapted from Tailwind CSS Docs, which is adapted from Alfred VueJS

A tool for creating configurable dumps of large MySQL-databases.

slimdump slimdump is a little tool to help you create configurable dumps of large MySQL-databases. It works off one or several configuration files. Fo

WeExpire is an opensource tool for creating emergency notes that can be read by your trusted contacts only after your death or if you are seriously injured

WeExpire is an opensource tool for creating emergency notes that can be read by your trusted contacts only after your death or if you are

PHP_Depend is an adaptation of the established Java development tool JDepend. This tool shows you the quality of your design in terms of extensibility, reusability and maintainability.

PHP Depend Documentation PHP Depend for enterprise Available as part of the Tidelift Subscription. The maintainers of PHP Depend and thousands of othe

Project that aims to create a website for a gym, where the clients and employees can access their data, buy in the gym store and check the gym activities.

Gym_Management_Project Project that aims to create a website for a gym, where the clients and employees can access their data, buy in the gym store an

The system that will administer or manage companies and their employees and clients.

About - - Business Management System The system that will administer or manage companies and their employees and clients. Resources Use of Notificatio

Orangescrum is a simple yet powerful free and open source project management software that helps team to organize their tasks, projects and deliver more.
Orangescrum is a simple yet powerful free and open source project management software that helps team to organize their tasks, projects and deliver more.

Free, open source Project Management software Introduction Orangescrum is the simple yet powerful free and open source project management software tha

A Magento 2 module that allows admins to duplicate CMS blocks and pages from their respective grids and en masse.
A Magento 2 module that allows admins to duplicate CMS blocks and pages from their respective grids and en masse.

element119 | CMS Duplicator 📝 Features ✔️ Allows merchants to duplicate CMS blocks and pages from the Action column in the admin grid ✔️ Allows merch

Releases(v0.9.8)
Owner
Confidence Analytics
Confidence Analytics
Creating data transfer objects with the power of php objects. No php attributes, no reflection api, and no other under the hook work.

Super Simple DTO Creating data transfer objects with the power of php objects. No php attributes, no reflection api, and no other under the hook work.

Mohammed Manssour 8 Jun 8, 2023
This website for web pentesters and beginner bug bounty hunters,You can improve your hacking skills by practicing xss in this lab.

XSSLab [Not finished yet, it's under development] XSSLab is a vulnerable website coded By Mahdi Jaber "Mr MJT" {in digital world}.. By XSSLab you can

Mr MJT [Mahdi Jaber] 7 Aug 30, 2022
Pattern Lab Standard Edition for Twig

Pattern Lab Standard Edition for Twig The Standard Edition for Twig gives developers and designers a clean and stable base from which to develop a Twi

Pattern Lab 102 Oct 24, 2022
A web application built on PHP for user to view their credit information in their mysql database

TheCreditInfo Table of Content About Inspiration Technologies Client Pages Usage About Credere is a website created to help you track your credit hist

Abdul-Baseet Shabi 0 Jul 21, 2022
Joole Reflector - used to work with the properties of objects, their changes and merges

Joole Reflector allows you to change protected, as well as private properties of an object.

Ravil Sitdikov 1 May 7, 2022
PHP package to make your objects strict and throw exception when you try to access or set some undefined property in your objects.

?? Yell PHP package to make your objects strict and throw exception when you try to access or set some undefined property in your objects. Requirement

Zeeshan Ahmad 20 Dec 8, 2018
Deeper is a easy way to compare if 2 objects is equal based on values in these objects. This library is heavily inspired in Golang's reflect.DeepEqual().

Deeper Deeper is a easy way to compare if 2 objects is equal based on values in these objects. This library is heavily inspired in Golang's reflect.De

Joubert RedRat 4 Feb 12, 2022
SEOstats is a powerful open source PHP library to request a bunch of SEO relevant metrics.

SEOstats: SEO metrics library for PHP SEOstats is the open source PHP library to get SEO-relevant website metrics. SEOstats is used to gather metrics

Stephan Schmitz 1.4k Dec 28, 2022
An ultra-fast Laravel docs search workflow for Alfred 3+.

Laravel Docs Workflow for Alfred An ultra-fast Laravel docs search workflow for Alfred 3+. Installation Download the latest version Install the workfl

Till Krüss 317 Dec 21, 2022
Drupal / Eleventy Docs Site for the Design System

Drupal / Eleventy Docs Site for the Design System

University of Michigan Library 2 Oct 31, 2022