From e71c84cbb581ec2b4907217ddb9c678056ad0d04 Mon Sep 17 00:00:00 2001 From: Caralyn Reisle Date: Thu, 3 Mar 2022 17:07:51 -0800 Subject: [PATCH 1/2] Use loaders repo README in loading data docs --- .gitignore | 1 + docs/build_external.sh | 17 +++++++++++++++++ docs/graphkb/loading_data.md | 30 ++++++++---------------------- docs/install.md | 7 ++++--- 4 files changed, 30 insertions(+), 25 deletions(-) diff --git a/.gitignore b/.gitignore index 97e0af7..29adf87 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ dist/ build-docs .vscode docs/_pori* +docs/*/_pori* docs/*/python_adapter docs/developer_reference/ipr docs/developer_reference/graphkb diff --git a/docs/build_external.sh b/docs/build_external.sh index d8f6763..d4a9a87 100644 --- a/docs/build_external.sh +++ b/docs/build_external.sh @@ -5,8 +5,10 @@ if ! [ -d docs/_pori_ipr_python ]; then git clone https://github.com/bcgsc/pori_ipr_python.git docs/_pori_ipr_python + echo "hide: true" > docs/_pori_ipr_python/.pages else cd docs/_pori_ipr_python + git checkout master git pull cd ../.. fi @@ -15,12 +17,27 @@ fi if ! [ -d docs/_pori_graphkb_python ]; then git clone https://github.com/bcgsc/pori_graphkb_python.git docs/_pori_graphkb_python + echo "hide: true" > docs/_pori_graphkb_python/.pages else cd docs/_pori_graphkb_python + git checkout master git pull cd ../.. fi + +# clone the loaders repo if it does not exist, otherwise update +if ! [ -d docs/graphkb/_pori_graphkb_loader ]; +then + git clone https://github.com/bcgsc/pori_graphkb_loader.git docs/graphkb/_pori_graphkb_loader + echo "hide: true" > docs/graphkb/_pori_graphkb_loader/.pages +else + cd docs/graphkb/_pori_graphkb_loader + git checkout master + git pull + cd ../../.. +fi + # now build the reference python module API files markdown_refdocs \ docs/_pori_graphkb_python/graphkb \ diff --git a/docs/graphkb/loading_data.md b/docs/graphkb/loading_data.md index 70c4702..aab2ad0 100644 --- a/docs/graphkb/loading_data.md +++ b/docs/graphkb/loading_data.md @@ -1,28 +1,7 @@ # Loading Data We have provided a number of modules to automate loading external resources into GraphKB. Users can -pick and choose which resources they would like to load or use the snakemake pipeline to load them all. - -## Loading All Resources - -Loading GraphKB content can be done as an initialization step using snakemake (see instructions [here](https://github.com/bcgsc/pori_graphkb_loader#initializing-graphkb-content)). This will download and load all open-data content by default into your newly created GraphKB instance. - -![workflow](https://github.com/bcgsc/pori_graphkb_loader/raw/develop/docs/basic_workflow.png) - -## Loading Licensed Content - -Both COSMIC and DrugBank have some licensing on their content which will require users to create -their own accounts with the respective resource. However, including them in the default load is trivial. -Once you have your credentials, simply include the email/password parameters for the resource you -would like to load as config arguments. - -```bash -snakemake -j 1 \ - --config drugbank_email="YOUR EMAIL" \ - drugbank_password="YOUR PASSWORD" \ - cosmic_email="YOUR EMAIL" \ - cosmic_password="YOUR PASSWORD" -``` +pick and choose which resources they would like to load or use the snakemake pipeline to load them all (see instructions [here](#loading-content)). This will download and load content by default into your newly created GraphKB instance. ## Popular Resources @@ -225,3 +204,10 @@ src/ ``` If you have any issues or questions please make an issue in the [loaders repo](https://github.com/bcgsc/pori_graphkb_loader/issues). + +## Loading Content + +{% + include-markdown "./_pori_graphkb_loader/README.md" + start="## Initializing GraphKB Content" +%} diff --git a/docs/install.md b/docs/install.md index e96fe02..12751b1 100644 --- a/docs/install.md +++ b/docs/install.md @@ -30,8 +30,7 @@ For convenience there are also a number of default users which all have the defa | iprdemo | IPR | This is an admin user in the IPR demo db | | graphkb_admin | GraphKB | Admin user for managing content/users in the GraphKB web interface | - -![default users](../images/pori-keycloak-default-users.png) +![default users](./images/pori-keycloak-default-users.png) ## Run docker-compose @@ -82,7 +81,7 @@ Sometimes you will need to check the logs from the various servers, this can be docker logs ``` -### Loading Data into GraphKB +### Test Loading Data into GraphKB If you are running the GraphKB loader via its docker container you will need to tell it to use the host network so that it is able to find the GraphKB API. @@ -112,6 +111,8 @@ docker run --net host \ Because we are running the loader by itself we need to provide the mount arguments to tell docker that we need access to a file outside of the container itself. When we run this with the snakemake pipeline this is not necessary since snakemake generally takes care of that for you +Once you have tested that things have been set up correctly and loading is working you are ready to initialize the data in your newly create GraphKB instance. See the [loader documentation](./graphkb/loading_data.md) for further instructions. + ## Production Instances ### HTTPS From c76e77a10b9dcb2813ba97aa83bf215c6ac5bbe1 Mon Sep 17 00:00:00 2001 From: Caralyn Reisle Date: Thu, 3 Mar 2022 17:08:16 -0800 Subject: [PATCH 2/2] Move embedded logo images to css for readability of MD --- docs/graphkb/loading_data.md | 22 ++++++++++++++++------ docs/styles.css | 28 +++++++++++++++++++++++++++- 2 files changed, 43 insertions(+), 7 deletions(-) diff --git a/docs/graphkb/loading_data.md b/docs/graphkb/loading_data.md index aab2ad0..4be4212 100644 --- a/docs/graphkb/loading_data.md +++ b/docs/graphkb/loading_data.md @@ -9,7 +9,7 @@ Most popular resources which have pre-built loaders provided for GraphKB are lis
-- ![logo](data:image/png;base64,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) +- ![cgi logo]() ### Cancer Genome Interpreter @@ -60,7 +60,7 @@ Most popular resources which have pre-built loaders provided for GraphKB are lis Catalogue of Somatic Mutations in Cancer. Loaders are written for importing both the resistance mutations as well as recurrent fusions information. -- ![logo](data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAoHCBQUERgVEhIZGRIYEhkSEhgYGBgYEhgSGBoZGRkaGBkcIS4mHB4rIRoZJzgmKy80NTY1GiU7QDs0Py40NTEBDAwMEA8QGhISHjEsISE2NDQ0NDQxNDE0NDQ0NDQ0NDQ0MTQ0NDQ0NDQ0NDQ0NDQxNDE0NTQxNDQ0NDQ0ND80P//AABEIAGgB5QMBIgACEQEDEQH/xAAbAAABBQEBAAAAAAAAAAAAAAAAAgMEBQYBB//EAEQQAAIBAwICBwQHBQUIAwAAAAECAAMEERIhBTEGEyJBUWGBMnFykRRSc5KhsbIjJEJighUzY8HRBxY0Q3TS4fAXosL/xAAaAQEBAQEBAQEAAAAAAAAAAAAAAQIEAwUG/8QAJREBAQACAgIBAwUBAAAAAAAAAAECESExA0ESBDJxBSIzgbET/9oADAMBAAIRAxEAPwCZmGYjM7mdz1IqHaL4BTptcYqIGYDUmdxkc9u8xDyGtU06qVB/C2TjmR3j5TOU3KlepJdIiaqjhVAySTgYlBxH/aJZ0iVphqrD6mAn3j/lING+pVv4ldGXDKwB9GUyNW6HW9c5pIyN/Jun3TsJzzXtk3/8m1teTbIKf1Q51/eIx+EtbTpxbV+yztTc/wANTAGfJgcSmp/7NLgvhq1MU/rYY1Pucv8A7S7tegFrR3qA1W/n9j7o2+c1fj6OEi6dXXkGB3B5jHiDMrdUkStppjGB2gOWT4ek03FLqlbpg6UAGFRcA47gqiZK2y7lzzZiZcObsi2onaSFMj0xHhPRo4DFBxIdatiQal23crH3AyC8VxHFcTNjiDfUf7rf6RS8RbvVvumRGlVo4pmft+Jg7Zlrb3QaBOEWI0rRFSuBMiWGnRUEornigXvjA4g7ezTcj4TGhp1qCOq0yg4g6+1TcD4TJtpxZW740NCDFBxK9bsYkO54hjlk+7eZ0i/DiLVplafFjnk3yMt7O71SWC4WKEapnMdEg7qxOdeJEu62kSia+ZidLDbxyI0jVpVBi9YEzlresCA3eMjfORH7riGkc5NC8FcR1HzMjSvXZgPHzlxwy71gRYLoToiV5RQmUKhCEAhCEAhCEAhCEAhCEAhCEAhCEAhCEAhCEAhCEAhCEAhCEDyDMMzmYZnc9XTIl0uxkqM1xtAsuh/R6jU/bVcuQ5CpkhRpP8WOfu5T0Wpc0qCaqjoiAcyQqgTzvoneFFqID2g2tR34IwcfIfOd6Q9Gnuj1iXDdZj2HJNP+kj2fxnPlzlZWL206dPrBqmgViB3OVYUifDVjb3kY85cVrhHTUrhkYbFWyCPIieL0uil61Tq1tn1fW7PV48dedOPXPlNx0d6JVLMa6ldixHapof2XrnmfPaS44zqmop+kXAkpt11Nzhn0lWYsSTncE790TZJsJI6UVtVREzyBbHhnYRu2G09cftanSWscjaxc0KviVTAMt7DPVJufZB/CUfFfZM0nDKf7FPgX8hPPJnIb+Jne14md4kzU7erUUAslJ6ig8iyjIzMdb9LK4INSmpTv05Bx5ZknKaa2pRR9qlNWHiRhh7mG4lbc2zUCGUlqTHAJ9pW+q3+subZw6K68mGR6x5rUOrU25Oun3N/CfQ4klWVW07vs85ArV3qPop8+89wHiZTi/KqQ2zLlWHgw2Imo4PZFKYLDtsNTevd6S26KbtrBU3xl+9jufTwknQfGTBSmVu+M1HqFaGBTBwGIyzY7xnYCO07X4BHImcegj+2gz3Muzj1HP1lFSvbhfaIYd+QAfwln/aJZOwuKh235KPHzMLp2o2glQ+oDv7/cfOM8NqFnffltFChhYngCZap8Q/KBYjV4mFKti5dfAr+kSSKcrycXlT4l/SshGst22izVAlU12FXnK1+IO5IpqW92APmdpnQsOL3I0neZ/h51hj/MYcSt7plJWnq8lZS3yzk+kR0VYvRbIIYVGUgjBBB7x3SxE24fTUQf4f8AmY1xOqcDzIEd4iuKyfZD9RkXiI9n4h+clFhZU+2nvEV0auwUGT3CSbOn2k94mP6MPXdFanTOjA7Rwq+hPP0jIesUrlSOcfVwZjKdS4UeyG+FgT8u/wBJZcP4rqODseRB2IMxYjSCdjFCpkR+QEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgeO5nYiKE73sUI3U5RcRU5SIgULWrUrqlA4cnZs4CjvJPhPV+CcIFOmvWP1j43YjSufJR/nPOOjz6bxfhb8psuLve1U027aF5MV/vPQzw8vemcmoFxTD6A66wNRQEawvLOnniVvHkqNSYUagp1P4WK6vw7p52nQuur9YC4qZ1awW6zPjq5zXWBuUp4umDY9k4xUI/n7p5ySIwYoVErMtbPWBu2Sc57wc+B2lvQG0g39cvd1GbnqA9AoxJ1DlOmcyNJCxUQsXApuK+yZsOFU/2CfZr+QmP4r7Jm74On7vT+zX9Innn6ZyROM0/wB0uP8Ap3/KefLbDRy7p6XxxMWdx/09T8p52h7HpJj0YtZ0TGq0TyJX5Ej/ACl0qbj3ys6GU/3Rc97ufTU00ApzFvKV5RxChnir0hyN1k/1ds/nPSFpYGPKYGuM9IH8Ovx6imBPTOrlyvS1T8YYpaV3GxFJgD4FsKD+MxvB6LMMU0LEDJCjJxNn0upE8Or456aZ9BVQn8AZk+htTFyB3Mh/DEuN4pOkqpaXHdbP90xVva3AO9u/3TNxohomfkbY+5qMnZdSrYzgjBweUV0XGo1fiH5CM9LXxd4/wUP4GSuhK5FX4x+Qmr0Xpe9VM5fvpvKvxL+hZr+rmF6Qvpva3xL+hZmJE6jqrvoB7I3fHh4S5raKNMs2FpqN/wDIAd5kPojRzSZ+9nPyXbH4H5xPS9SRQp9zM9Rv6NKr+po3yIP+86av7twv1tvyl3Z1kqr1lMghtyR3nlv5yhq8NHV8u6WvRKjigR/O35xSmuMLi4T7IfqaQb/mvxr+Yllx9cXNP7EfqaV19zT41/MSDRUkIAx4SovOMUKLdWo1FdiqAaVx3eAPlNPaU919JgeBcODICdyRkk8yY2i84XxVK5KrlXG+k7HHiJMv7clDUUftEGTj+OmOefMc5nzbdVc02X6+k+47TbUaeSAeR7J9x2gI4LdalG8vAZjujzFSV+qxX5Eia9DtMBcIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgeNiKEMTone9hG6nKOiNVeUiO9HP+OT3N+U9ctR2Z4Pc3j0nD0nKODgMME7++W/DulV6ThrpiPcn/bPXH6HPz4/LGz+2p4sspuPaJWcUHZM83vek16Blbhh6J/pKO56VXp53Tn+lP8Atmp+leXW9xZ9PlZvcT7o/vdT4/8A8iWVDlMzwi5eoS7sWcuck4yeXhNNQ5TnuPx/bfTGtcJCxcQsXIim4r7JnovBU/dqX2afpE874qOyZ6ZwNP3Wl9kn6RPLy+mckLpN2bC5PhbVD+E8h+njR5z3W6tEqI1OoupHUq6nOCp5jaVVt0Rsqbh0tUDqcqTqbBHIgE4zMY5ahLojo1YmlaU0YdrQC3vO5lqtMZ35cz7hzkjRM/0u4mKVE0kP7WqCoxzVDszHwzyHvmZu1l5kLjN8bk8mumqe5Gc4+Sn8J7FTUMoI7xmeZDh3Yxjumx6IcUDp1Dn9ogwuebIORm841VtxGx66hVpctdJ6YPgxGx+eJ5Ba3TUnyCUqISp8Qw2I3nuOiUPGeiNrcuXdGWofaZDpLebDkT5zON12krLdB+MV7i6dKtQsi09QGAMHVjum+6uVfAuilvaOz0tZdl0sXbPZznlyEvdElvPBXmnTT/jj9hT/ACMsugC5Wr8Y/ISH00p5vif8JB+csv8AZ6nZrfaD9Imr9q3pqurnm/Scfv8AX+Jf0LPUQk844/R1X9f4l/Qszj2kX/Q3tWi+TMD6EyN0vOmtb5+pU/Uk70Mr6C9Fu8609diP/fGWPS7g7V6KtSGatNiyDlqVgNSg+OwPpHVPanuKw0ekseiQzQJ/xG/OZP6LeN2BbVNXLdcD5nabrozwt7e3VKhBqElmxyBO+M9+PGXKlU/SUYuk+xH6mlZee0n2ifqEtelKH6Wh7upA+TGVd0vbT7RP1CJ0NzbJusxPR6sOrX4RN9RXGD5TzapwG8tToWmaiclZN8j+Yc1MkRMvnDV6YHfUWbaimCPSZHo3wWu1cVq6FEQHQre0zHbOO4AZmp4vcilRZ/4iNCDxZth/mfSSig4H2qjN41GPzYzY0+UzfR+10qJpRykCoQhAIQhAIQhAIQhAIQhAIQhAIQhAIQhAIQhAIQhAIQhA8encQnZ3PVyN1uUdxG6w2gZvivMe+ctHwRO8X5j4o1bcx759n9P/AI7+XX4ftrQVKeaefKZu55mar/lekyt3zM6PlxVxvab0f5f1may35TKdH+X9Zmst+U/P+T77+a5Mu6kLFxKxYmGVff0cgzVWPSy2pUURteVpqpwhIyABKKqoxIFSix3FJyDuCEYgjyIExljMu0s22P8Avxafz/cadHTa17tf3DMcluM4ZSrc8MCD8jJC2qDwmf8AnifFeXfTQsMW9E5+tUwAPMKCc/OUlGizuXqMWdjlmPP/AMDyj9CkndHeuIOERmxz0qTj34iYzHo1pIFAYldc2jKwemSrqcqRzBk6jegnSwKt3ggg/Ix81EPfNBzh/S1kAW5pk421oMj3lefyzLin0ptGGetA+IMp/ETO1LdD4Rk2CnwnncYmmnqdKrRR/eZ8lVmP4CV1z0tLbW9E/E+w9FEqqVkmdsSYaKIMmPjDSDVovVYvVOpyME4xsOQA8JP4Bdpah+s1dpgRhSe6cS5OM9W2j62k6fniOsqMNyIvPCrJelVuTtr+4ZUV6S1bh6ig6XIIyMH2QOXpHEtU8pOohF7xJJImlRc2TKQ9M4dTkES3sukqgaa6lWHeASp+XL1jpdG2yJBuqCZxjJ8AMmSzYtavSS2UZ1k+SqSZXWfSsNUfrKbJT2FPbUx8S2OXukehaU2GdpIW1pjvEfGJpzidRLh0dM5VSpyMbZyJGq2naUt7IdWO2dgcy1oCmOREeZkPeIEe96QotNxTDdZoYJ2TjXjCk+WY1wrpQrKBXUo/ecEofcRy9Y6bWmx5icbhyeUmhKq9IaAHZJdu4KDn5nYSqbrLmoGcYRfYTuHn5nzk1OHou5xJ1B6a/wAQkQ/ZUNIEmyKl2ncwjjXCjm0gehGVuFPJofSF+tAehEdYMZztGxcpnGoZgPwjbVlHMxprxB/EIEmEjrdIeTCKNwuM5gPQjC3KHkwimrKO+A7CMtcKObRIuk+sIEiEYS5RuTR+AQhCAQhCAQhCAQhCB5DidxFYhidz1cxGqo2j+Il1kGW40uCPika3O498ueLWutSBz5j3jlM4lQqcEYI2In1PofLjjjca6PDlNaa7rB1fPumXujuZ03bYxnaRzl2Crux5Tqzzxxxt29OMZV10eTs/1GaugNpT8ItNCKPAfj3y8prPhZ3eVrjt3TgixOCKEwgZcjEi2t3WSleYquAlhUamNRwjAjBXwMmgSGRpW4UqT11u1EYxsW7z5TOU3EqJQsLmtZ21xRpvVrOzi4cuM6UcqntsO4d0l1Ka/wBrraFT1RZQy6mzvQDntZz7XnIFe0L2lvQAYGizsxBwG1uW2x75Pdh/aS3mhtIKkrtr7NIU/d5zOr/qclVuywT6G9Alm0s9QvrRdthk45g+s7RrsttesjlWCUcMpwR2n5ERi3sqCsWpfSNbOWPXNTZACSSFCqDJQVVSvTqpUKVlRSaZQOugsf49u/wjXC+lZecQd+EtXqOWrULkU1c7u1NlB0se/BbP9MvLiyQVqlP6NVp0ktRWF2XfqdenOkh+yTnuGfSVd9ZCpbLbUUZKCsXbWQ1R6hGNTkADYHkJOvqnXVKi1abtaVKSoUyNaVUACum+Af8AxM2X0Kupe6bK1rDOuq1QOcnBCVCowO7YS1dNXEfoqEqmlXY5yQnVq7Yz3kn8ZDo2VJralQuEq4oO702pFBqDtqKuGB7z3SaVf6WbtEw2QNBOQUCBNJPmo+cvIh2nE0qBmo2dZaQYhK+p3psqtgliV0jl3GXFsBVuKSNupbUw7jpGcfhINlbUqQrLRWuBWUrodlNGnltRKADPOT/ozLodPbQhlzy9x8jHpFPYXN5c1KrU7hR+0dOrappIUZ2Wn3gL+UkcJ/aWgqravXc3DUyEqFNKKOfMA77esXbWlvTujcpRrCs2vsakNEM4IYg41Y3O0i23DkFotvWWv2a7Vw1EoN2GMHUDt6TPIkcErJWev1maaIoKdo/sy76QWOe1jbOfAyFf3NShbIamRX+mPbVNzjSoyuB5gg58CJKo8NC07lEV9FakKaFiutd85YjA+UVxW1evbUaboesp1A9R9sOVTQCf5tIUekc7FjfL1NVlW0cICoSsarFCWwfYJ94ki2c/Sk3/AOW/6DIFezpVblq2i4Wo2Ni1PqQQAB2cZ7vGWaUSlRXKk4RlwOfaGJPQoOjg6+1qHWVrdYKVBtRC9YU1qpHLcjHrGn4gqC162i7tXp4ca3QpVFTQ2ceG4x5R9ODulo9FAwqGuldHGOyyYx67SXxSyau9FzT0tTGXAxhnLh2K+9sn1k5QzfVqa3i29OmygXCI7mo7akbTkAE7c4zx+6ahlRaPTHW6EqNVLq6jnhc7ZHjLW5sS1z9I0H+9Spp21dnTt+EqeIcDp1Kjui3AqO+vDtTNIEnJwAufxlFncAJUuENCpSp0qXWJcs7mkzaQdID7E5yOzmMcJvxVpJrYi4r9abVckZFFQWOO/LED1EVxG0au1daqO1vV0ui5BelVVQA6Z2HLcR6lTuENIUFCUqSKioyIznHtHVjK6t+RkREseKB7Y3FUFl6wUaaBimqpjJyRuAADy8I5UuUVlLUW6t9CBRUfssTgtq5kb8otbAA1kak/0epW+kKFIFSnVPtFc5BU5O3nJL2GoLoV9KlT28aiQc9w2kEPr6f9orapSdVV2V3NR21AUy4wCdt8fKM23Es0K1eplkpv1VNAxXVUP1mG4AGJarYH6abnQcai2nbVuhSRKPCClOpSqIzUarazpIFRHB2Zc7SCFf8AFNNmtzSDIvWGlUQsXAYDIKsd8S3uKWm8oqhJoM7Uaw1HUlUJrTJzkBhy93nIF1wbXbLbUkcUlc1GLkGo7nbJxsBLGhTdL2pX0MadRUDIcZDoMK48+foYHKfEmNprzvpzI1W8orfLalHV3RWSoKhI1MuoAo22MjHrJ1PhLC20d+nEiVrVTdC4FGoa6IEQMyCiGC6Q2ANRPrAi0OMjNVrhiKNuNNQglc1GcIig+ZMRZ3K/TzZ1kZi1RurcOygU+rLrsOeQOfnH7bh1anQZKYxUeqatZ2RXDeACsD744bVzdW9w9MmpSQpVICgP2XVSB3e2YEC24ktSvpVGp0Ka1Klcl2bsU8knUeXICPHiIN3QpqT1FwqVKe5zodSSNXiCDHrHhtSktbq1xVqkAMVVlVMkkYPMnP4Tle2qFrZ6qFqtvVZwyKqq1Nh7OkYAOcfKB17k0qdWpUt6lvoqinSL1Na1gWIyBklRgA745xdlxBaip1jEPXqPStdyBqSmzk47xkAe+Q6PC1VLlaKVy1yTr651NNAWLHQqjbmeflJwt7hForQAWnSRRhkRmZwcu2ojK58sQInDb1rinVOjrK6YCUOs6stvhjqyDtG7a/LXlKg9CpRDHDozMTnS5yrHfTsN890LzgdGpWqO6V0LvrRqbIChI7QwQebZOR4ya9s5uLetocpbpoTUdVVxpIJZuRO8B6xrMtQKbV6JLtpL1C+tV2yBnbmPnNevITF8H4UiOWpivqLlj1rIyjJyQulQZtE5CAqEIQCEIQCEIQCEIQPJsTuIQna9RiGIQgM1aWZU3vCVfmN/EbGEIlsvAgDgG/ttj0/0lnYcKVOQ37zzJ9YQly8mV7W5VdUKWJKUQhMslgRaichIFgRQWEJAtVEUEHhOwkQpUHhHAg8IQgKVB4RYQeEITIWEHhHFUQhAUqDwjoE5CZQoIPCLFMeEISBxaY8IoIPCdhIFLTHhHAohCEKCDwigg8IQkCgg8J0U18IQgLCDwigg8IQkR3QPCdCDwhCQK0jwgVHhOQgAQeE7pHhCEA0ic6seE5CArSPCGgeE5CB0KPCcKA905CAdWvgIrSPCEICTSXwE7oHhCEACAchFwhAIQhAIQhAIQhAIQhA//9k=) +- ![cosmic logo]() ### DGIdb @@ -131,13 +131,13 @@ Most popular resources which have pre-built loaders provided for GraphKB are lis Parses Oncology Approval Announcements from the FDA site, stores as evidence items. -- ![logo](https://upload.wikimedia.org/wikipedia/commons/thumb/7/7d/Food_and_Drug_Administration_logo.svg/1280px-Food_and_Drug_Administration_logo.svg.png) +- ![fda-srs logo](https://precision.fda.gov/uniisearch/_next/image?url=%2Funiisearch%2Fgsrs-logo.svg&w=256&q=75) ### FDA SRS - [https://fdasis.nlm.nih.gov/srs](https://fdasis.nlm.nih.gov/srs/) + [https://precision.fda.gov/uniisearch](https://precision.fda.gov/uniisearch) - The FDA substance registration system contains drug definitions and names. + The FDA global substance registration system contains drug definitions and names. - ![logo](../images/graph-icon_outline.svg) @@ -158,6 +158,16 @@ Most popular resources which have pre-built loaders provided for GraphKB are lis Gene names and definitions as well as cross-mappings to several other gene resources such as ensembl and entrez. +- ![MOA logo](https://moalmanac.org/static/img/moalmanac.jpg) + + ### MOAlmanac + + [https://moalmanac.org](https://moalmanac.org) + + [ODbL v1.0](https://moalmanac.org/terms) + + A collection of putative alteration/action relationships identified in clinical, preclinical, and inferential studies. + - ![logo](https://ncit.nci.nih.gov/ncitbrowser/images/thesaurus_browser_logo.jpg) ### NCIt @@ -168,7 +178,7 @@ Most popular resources which have pre-built loaders provided for GraphKB are lis NCI Thesaurus which contains therapies, anatomical entities, and disease definitions. -- ![logo](https://www.oncokb.org/content/oncokb.png) +- ![logo](https://avatars.githubusercontent.com/u/22530657?s=200&v=4) ### OncoKB diff --git a/docs/styles.css b/docs/styles.css index 48e1eb9..85d1f32 100644 --- a/docs/styles.css +++ b/docs/styles.css @@ -43,6 +43,7 @@ grid-template-areas: "image title" "image source" "image license" "image description"; margin-bottom: 30px; grid-auto-rows: max-content auto; + grid-auto-columns: 0.4fr auto; } .projects ul li > * { @@ -76,13 +77,38 @@ .external ul li > :first-child { padding: 8px; width: 200px; + min-width: 200px; grid-area: image; + display: flex; + align-items: center; } -.external ul li > :first-child > img { +.external ul li > :first-child > img { width: 100%; } +/* FDA logo */ +.external ul li > :first-child > img[alt~="fda-srs"] { + content: url("data:image/jpeg;base64,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"); +} + +/* cosmic logo */ +.external ul li > :first-child > img[alt~="cosmic"] { + content: url("data:image/jpeg;base64,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"); +} + +/* CGI logo */ +.external ul li > :first-child > img[alt~="cgi"] { + content: url("data:image/png;base64,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"); +} + + +/** Hack to fix bad image paths from markdown-include not fixing relative paths correctly*/ +img[alt~="full workflow"] { + content: url('./_pori_graphkb_loader/docs/full_workflow.png'); +} + + .md-typeset div.arithmatex { overflow: unset !important; }