Skip to content

Instantly share code, notes, and snippets.

View johngrimes's full-sized avatar
🚴
coding and cycling

John Grimes johngrimes

🚴
coding and cycling
View GitHub Profile
@johngrimes
johngrimes / get_token.py
Created February 27, 2024 00:06
OAuth2 client credentials test harness
import requests
def get_oauth2_token(client_id, client_secret, token_url):
"""
Obtain an OAuth2 token using client credentials grant.
:param client_id: OAuth2 Client ID
:param client_secret: OAuth2 Client Secret
:param token_url: OAuth2 Token Endpoint URL
@johngrimes
johngrimes / prostate_cancer.ipynb
Created January 16, 2024 10:35
Pathling SQL on FHIR Demo
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@johngrimes
johngrimes / checking-inactive-codes.md
Last active December 14, 2023 23:08
Method for checking for inactive codes within a set of JSON FHIR resources
@johngrimes
johngrimes / nginx.conf
Created February 14, 2018 22:23
Ideal Nginx configuration for JavaScript single-page app
server {
listen 80;
root /usr/share/nginx/html;
gzip on;
gzip_types text/css application/javascript application/json image/svg+xml;
gzip_comp_level 9;
etag on;
location / {
try_files $uri $uri/ /index.html;
}
@johngrimes
johngrimes / Dockerfile
Created February 14, 2018 22:21
Injecting environment variables into config.json using Docker
FROM nginx
COPY docker/start.sh /
COPY docker/buildConfig.sh /
RUN chmod +x /start.sh /buildConfig.sh
COPY docker/myapp.nginx.conf /etc/nginx/conf.d/default.conf
COPY build /usr/share/nginx/html
ENV MYAPP_OPTION_A="Default option A value"
@johngrimes
johngrimes / update_resources.py
Created August 8, 2022 04:23
Send any number of FHIR JSON resource files to a server as updates (in parallel)
import json
import multiprocessing as mp
import sys
from math import floor
from time import time
import requests
def update_resource(file):
@johngrimes
johngrimes / upload_bundles.py
Last active August 3, 2022 06:44
Upload FHIR JSON Bundles to a FHIR server (in parallel)
import multiprocessing as mp
import sys
from time import time
import requests
def upload_bundle(file):
with open(file) as bundle:
data = bundle.read()
@johngrimes
johngrimes / convert_search_to_update.py
Created August 2, 2022 06:54
Convert between FHIR search and update Bundles
import json
import sys
input_bundle = json.load(sys.stdin)
output_bundle = {
"resourceType": "Bundle",
"type": "transaction",
"entry": [
{
@johngrimes
johngrimes / terminology_functions.ipynb
Last active July 25, 2022 06:32
Pathling Python API - Terminology Functions
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@johngrimes
johngrimes / date.sql
Created May 21, 2010 07:03
MySQL Date Dimension Build Script
/* Adapted from Tom Cunningham's 'Data Warehousing with MySql' (www.meansandends.com/mysql-data-warehouse) */
###### small-numbers table
DROP TABLE IF EXISTS numbers_small;
CREATE TABLE numbers_small (number INT);
INSERT INTO numbers_small VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
###### main numbers table
DROP TABLE IF EXISTS numbers;
CREATE TABLE numbers (number BIGINT);