The Contributor Covenant Code of Conduct can be found here
Open-source Tools for Training Resources (OTTR) are a set of GitHub repositories designed to offer efficiency and flexibility in creating and maintaining training resources for courses and informatics tools. Below different repositories and resources that part of the OTTR universe are listed with brief explanations of what they do. The repositories and resources are split between "Functionality" and "Documentation" where the "Functionality" section focuses on the repositories or code that make OTTR functional; and the "Documentation" section focuses on the resources that explain how to use and maintain OTTR.
The OTTR_Template repository is a template used to create OTTR courses, specifically when you're writing one course, but publishing it in three places: (bookdown/website), Leanpub, and Coursera. If used with a pull request model, courses built with the template will be checked for spelling errors and periodically for broken URLs, and can be previewed and automatically rendered after updates.
The OTTR_Quizzes repository can be used when you want your course quizzes to remain private rather being housed in a public, open source repository. Use of this repository is in conjunction with the main OTTR_Template. All edits and additions to non-quiz content should take place
The OTTR_Template_Website repository is a template used to create OTTR websites. Like the main OTTR_Template, if used with a pull request model, websites built with the template will be checked for spelling errors and periodically for broken URLs, and can be previewed and automatically rendered after updates. Unlike the main OTTR_Template, it only produces a website as output.
The ottr-reports repository houses the functionality for reporting the results of the GitHub Action checks on spelling, URLs, and quiz formatting.
The ottr_docker repository holds the Dockerfiles for docker images available for use with OTTR.
The ottrpal repository provides the functionality to convert an OTTR course to files ready for use in Leanpub and Coursera
The cow repository isn't officially an OTTR repository, but is a GitHub API wrapper in R which has additional functions to help wrangle GitHub published courses like OTTR courses.
The ottrproject.org repository renders the OTTR documentation website. The repository is generated from the OTTR_Template_Website template.
There's an OTTR paper published in the Journal of Statistics and Data Science Education by C. Savonen, C. Wright, A. Hoffman, et al. in 2023. For information on citing the manuscript, see here
TBA
TBA
There are various ways in which you can request or suggest changes to OTTR. Below we discuss ways in which you can make suggestions or requests, but leave the implementation to others or implement the suggestions yourselves.
If you want to alert us about an issue or make suggestions, you can open a GitHub Issue or submit a response in our OTTR Feedback Google Form.
If you aren't sure what repository the suggestion pertains to -- or if the suggestion pertains to multiple repositories file it to the OTTR_Template
repo.
Open an issue describing the bug or feature request for the relevant repository using the following links.
Repository | Issues Link |
---|---|
OTTR_Template | Open an issue here |
OTTR_Quizzes | Open an issue here |
OTTR_Template_Website | Open an issue here |
ottr-reports | Open an issue here |
ottr-docker | Open an issue here |
ottrpal | Open an issue here |
cow | Open an issue here |
ottrproject.org | Open an issue here |
Most of the links above will directly open an issue for you to fill out a description of the problem or request, but several of the repositories provide choices (and related description templates) for the type of issue you want to open. Those choices could include the following:
- Feature Request or Course Template Feature Request: Use this issue if you want to make a suggestion for an addition.
- Problem Report or Course Template Problem Report: Use this issue if you want to report a problem or possible improvement.
- New Content Idea: This is a template meant for opening an issue in an OTTR course, so that someone can suggest an additional topic or idea for that specific course. It can be used for general suggestions for content.
- Course Problem Report: This is a template meant for opening an issue in an OTTR course, so that someone can point out a problem or suggest an improvement for that specific course. It shouldn't be used for opening an issue in one of these repos.
Assign an OTTR maintainer (@cansavvy
or @carriewright11
or @avahoffman
) to the issue. If you aren't sure who the issue pertains to, assign @cansavvy
and she'll make sure it gets to the right person.
This OTTR Feedback Google Form can be used to ask questions about any problems you encounter or submit feedback such as ideas or requests for improvements.
If you want to implement an improvement or fix a problem, open a branch, make the changes to the code there, and then open a pull request. See this chapter "Using Version Control with GitHub" from our Advanced Reproducibility course for more information on this pull request model if needed.
Make sure to request review of your pull request from an OTTR maintainer (@cansavvy
or @carriewright11
or @avahoffman
).
If you plan to use the OTTR template several times for related courses within an organization and want each to have a shared branding or functionality variation, you may want to make your own template from the OTTR_Template, incorporating the stylistic changes in your spinoff template before making specific courses from the spinoff template.
OTTR_Template --> Spinoff_Template (Make stylistic changes, mark as a template repository) --> Course Repository
Examples that have done this include:
Spinoff template | Link |
---|---|
AnVIL Template | GitHub Source Code |
DataTrail Template | GitHub Source Code |
Quarto website | GitHub Source Code |
Metric collection dashboard template | GitHub Source Code |
If you are interested in this and have questions, reach out to the OTTR maintainers by filing a GitHub issue and assigning @cansavvy
, @carriewright11
, and @avahoffman
.