Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[GEN-1109] Setup base mkdocs for genie #566

Merged
merged 8 commits into from
May 20, 2024
Merged

Conversation

rxu17
Copy link
Contributor

@rxu17 rxu17 commented May 17, 2024

Purpose: This draft PR adds an auto-documentation tool mkdocs and mkdocstrings for the Genie repo, setting up the initial skeleton and base pages for the genie docs. It helps auto-document our codebase as well as allowing us to add custom markdown pages.

This PR is just meant to set up the skeleton of the docs so we can get started with documenting our codebase and looking into areas of lacking documentation / improvement, refining specific things like font size, headings, etc will be done in a separate ticket.

Limitations: We will not be able to auto-document our R scripts as there isn't an extension similar to mkdocstrings for R. We can use a mix of roxygen2 and knitr to convert our R code to Rmarkdown files -> markdown files which can then be rendered in mkdocs. However this way is more hacky. We plan to convert all our R scripts to Python eventually / move the dashboard R scripts to Nextflow module so this may not be a concern.

Changes:
Initial vision and structure for the genie docs:

/project-root
├── Home
├── Getting Started
├── Tutorials
├── Reference (this page contains all the technical references to our pipeline code (all the modules and functions)
│   ├── Pipeline Commands (contains the scripts that have the command args to run the pipeline steps)
│   ├── Main Pipeline Steps
│    │    ├── Input to Database (include all scripts unique to validation / processing like input_to_database, validation, process_mutation, write_invalid_reasons)
│    │    ├── Database to Staging (include all scripts unique to consortium release like database_to_staging.py)
│    │    ├── Consortium To Public (include all scripts unique to public release like consortium_to_public.py)
│   ├── Fileformats (all of our fileformats including base fileformat class)
│   ├── Helper Modules (all of the helper tools used across the pipeline - extract, load, transform, process_functions)

Testing:
In the root directory run mkdocs serve to view the live docs

Examples:
image

image

image

@thomasyu888
Copy link
Member

Thanks @rxu17 for your work here! I agree that we don't have to worry about auto generating the R code documentation for now. It'd be great if this was linked to github pages!

@rxu17
Copy link
Contributor Author

rxu17 commented May 17, 2024

You can see the live site at: https://sage-bionetworks.github.io/Genie/

docs/index.md Outdated

## Introduction

This repository documents code used to gather, QC, standardize, and analyze data uploaded by institutes participating in AACR's Project GENIE (Genomics, Evidence, Neoplasia, Information, Exchange).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lets link to the portal URL?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Like move portal URL to here, and put the GH pages site to here?
image

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rxu17 hmmm, i think its valuable to have the portal URL be linked in as many places as possible. I did think about putting out documentation URL there. I go back and forth, but I suppose people who land on the GENIE github probably want documentation and not the portal.

Thoughts @Chelsea-Na ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Got it, I added it to that intro page

@rxu17 rxu17 marked this pull request as ready for review May 17, 2024 21:53
@rxu17 rxu17 requested a review from a team as a code owner May 17, 2024 21:53
Copy link

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarCloud

Copy link
Member

@thomasyu888 thomasyu888 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔥 LGTM!

@rxu17 rxu17 requested a review from Chelsea-Na May 18, 2024 06:08
@rxu17
Copy link
Contributor Author

rxu17 commented May 20, 2024

Per the weekly main genie check-in today, Chelsea also gave this the green light

@rxu17 rxu17 merged commit d3e0730 into develop May 20, 2024
14 checks passed
@rxu17 rxu17 deleted the gen-1109-setup-mkdocs branch May 20, 2024 18:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants