diff --git a/_quarto.yml b/_quarto.yml
index 3c5a63c..0b243bb 100644
--- a/_quarto.yml
+++ b/_quarto.yml
@@ -17,8 +17,6 @@ website:
href: next_steps.qmd
- text: "Example use cases"
href: examples.qmd
- - text: "Help me choose my template"
- href: choose_template.qmd
- text: "Build with OTTR"
menu:
- text: "Template"
@@ -32,15 +30,7 @@ website:
- text: "Giving credits {{< fa award title='An award' >}}"
href: more_features_credits.qmd
- text: "---"
- - text: "Customize"
- - text: "Style {{< fa palette title='A palette' >}}"
- href: customize-style.qmd
- - text: "Checks {{< fa robot title='A robot' >}}"
- href: customize-robots.qmd
- - text: "Docker {{< fa gears title='gears' >}}"
- href: customize-docker.qmd
- - text: "Advanced Integrations"
- menu:
+ - text: "Highly Recommended Steps"
- text: "Google Analytics {{< fa chart-line title='a line chart' >}}"
href: more_features_ganalytic.qmd
- text: "Citing sources {{< fa quote-left title='A left quotation mark' >}}"
@@ -49,8 +39,23 @@ website:
href: more_features_gdoc.qmd
- text: "Borrowing chapters {{< fa bookmark title='A bookmark' >}}"
href: more_features_borrowing.qmd
+ - text: ""
+ - text: "---"
+ - text: "Additional Customizations"
+ - text: "Style {{< fa palette title='A palette' >}}"
+ href: customize-style.qmd
+ - text: "Checks {{< fa robot title='A robot' >}}"
+ href: customize-robots.qmd
+ - text: "Docker {{< fa gears title='gears' >}}"
+ href: customize-docker.qmd
- text: "Publishing OTTR courses"
- href: publishing.qmd
+ menu:
+ - text: "Bookdown"
+ href: publishing_bookdown.qmd
+ - text: "Coursera"
+ href: publishing_coursera.qmd
+ - text: "Leanpub"
+ href: publishing_coursera.qmd
- text: "Troubleshooting {{< fa tools title='tools' >}}"
href: faqs.qmd
- text: "Contact {{< fa envelope title='An envelope' >}}"
@@ -64,4 +69,8 @@ format:
theme: cosmo
css: styles.css
toc: true
+ toc-location: left
include-after-body: resources/footer.html
+ page-layout: article
+
+
diff --git a/customize-style.qmd b/customize-style.qmd
index 5b249df..1a8e846 100644
--- a/customize-style.qmd
+++ b/customize-style.qmd
@@ -90,11 +90,45 @@ Thus as example the reference page looks like this:
## Changing course text colors
-To modify the colors used for the text, take a look at the `assets/style.css` code.
+Color theming is controlled through CSS variables. Default values live in `assets/style_config_default.css`, and course-specific overrides should go in `assets/style_config_custom.css`. To customize branding, update variables such as `--link-color`, `--accent-color`, and `--highlight-color`. You generally should not edit color hex codes directly in `assets/style.css`.
-If you would like to change the current dark blue color to be a different color, search and replace for `#012d72`. You can find hex color codes at this [website](https://htmlcolorcodes.com/color-picker/) to use as a replacement.
+For example, within your `assets/style_config_custom.css` file, you would add:
-If you would like to change the current light blue color to be a different color, do the same but search for `#68ace5`.
+```
+/*
+any variables listed in style_config_default.css can be overridden by giving them a new value in this file
+- add additional variable on new lines inside the :root element
+- don't forget the semicolon at the end of the line
+*/
+
+:root {
+ --link-color: #a1005a; /* deep magenta for links */
+ --accent-color: #6e0040; /* dark rose (headings, emphasis) */
+ --highlight-color: #e754a6; /* vibrant pink for UI highlights */
+ --caption-color: #4a4a4a; /* neutral dark gray */
+ --background-color: #ffffff;
+ --callout-background-color: #f6e9f1; /* soft pink-tinted gray */
+ }
+```
+
+### Accessible Color Palettes
+
+It’s crucial to ensure that the color palettes you use are accessible to all viewers, including those with color vision deficiencies. Thoughtfully choosing color schemes enhances readability and helps convey information more effectively. This section covers tips for using accessible color palettes and introduces tools like **ColorBuddy**, and **Venngage** for designing visualizations that everyone can interpret.
+
+#### Recommended Resources
+
+**1. ColorBuddy**
+
+Link:
diff --git a/enroll_sync.qmd b/enroll_sync.qmd
index 527c63a..b739faf 100644
--- a/enroll_sync.qmd
+++ b/enroll_sync.qmd
@@ -2,6 +2,29 @@
toc-depth: 5
---
+
+
+ Full setup guide with screenshots
+
+
+
## Enroll for Sync Updates
The OTTR templates are always a work in progress. New features are added and bugs are smoothed out over time. [Your feedback is greatly appreciated](https://github.com/ottrproject/OTTR_Template/issues/new/choose). When updates are made to non-content files (checks, automation), pull requests are automatically filed to downstream repositories made from the template.
@@ -59,6 +82,8 @@ If you are part of the jhudsl or fhdsl GitHub organiz
_If you have any questions about these updates or files, please tag `@kweav` or `@carriewright11`._
-
-#### 6. Set up your GitHub personal access token
-
-Go to **Settings** > **Secrets and variables** > **Actions** > **Repository secrets** and click **New repository secret**.
-
-- **Name**: `GH_PAT` (this exact name is required)
-- **Secret**: create a [classic personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-personal-access-token-classic) with `repo` and `workflow` scopes checked.
-
-#### 7. Set up GitHub Pages
-
-In your repository, go to **Settings** > **Pages** and configure:
-
-- **Source**: Deploy from a branch
-- **Branch**: `main`, folder `/docs`
-
-Click **Save**, then check **Enforce HTTPS** at the bottom of the page.
+## Courses
-
+::: {.path-header}
+**Use this path when:** you are building chaptered learning materials, modules, or a course website.
+:::
--**Warning**: If you visit your URL before pushing any file changes, you may see a 404 error. Check after filing your first pull request. -
- -#### 8. Enroll for updates (recommended) +### Quarto Courses {.toc-anchor-heading} -Add `jhudsl-robot` as a collaborator with write access (**Settings** > **Collaborators & Teams**), then add your repository name to the relevant sync file. [See full instructions here](https://www.ottrproject.org/getting_started.html#which-sync-file-should-you-edit). +
-
-#### 1. Create a repository from the template
-
-On the [landing page of the OTTR_Template repository](https://github.com/ottrproject/OTTR_Template), locate the green **Use this template** button in the upper right corner. Click it, then select **Create a new repository** and follow the instructions to configure your repository.
-
-
-
-#### 2. Name your repository and fill in a short description
-
-Enter a name in the **Repository name** field and provide a brief description in the **Description** box.
-
-
-
-#### 3. Ensure your repository is set to `public`
-
-Make sure to set it [to a public repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility). The rendered pull request preview won't work on private repositories (though you can preview content locally).
-
-#### 4. Click `Create repository from template` to proceed
-
-After creating your repository, issues with setup instructions will be automatically filed. Navigate to the **Issues** tab and follow the instructions there.
-
-#### 5. Check your GitHub Actions settings
-
-Go to **Settings** > **Actions** > **General**. Make sure you have:
-
-1. Given **Read and write permissions**
-2. Checked **Allow GitHub Actions to create and approve pull requests**
-
-Then click **Save**.
-
-
-
-#### 6. Set up your GitHub personal access token
-
-To give OTTR's robots the permissions they need, set a GitHub Secret called `GH_PAT`. Go to **Settings** > **Secrets and variables** > **Actions** and scroll down to **Repository secrets**. ([Read more about GitHub Secrets here](https://docs.github.com/en/actions/security-guides/encrypted-secrets).)
-
-If you have organization admin privileges and plan to make multiple courses, you can set `GH_PAT` as an organization secret so you only need to do this once.
-
-- Click **New repository secret** / **New organization secret**.
-- Under **Name**, enter `GH_PAT` (this exact name is required).
-- For **Secret**: create a [classic personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-personal-access-token-classic) with `repo` and `workflow` scopes checked. Copy and paste it as the secret value.
-
-If you encounter any problems, [report an issue here](https://github.com/ottrproject/OTTR_Template/issues/new?assignees=&labels=bug&projects=&template=course-problem-report.md&title%5B%5D=Problem).
-
-#### 7. Set up GitHub Pages
-
-In your repository, go to **Settings** > **Pages** and configure:
-
-- **Source**: Deploy from a branch
-- **Branch**: `main`, folder `/docs`
-
-Click **Save**, then check **Enforce HTTPS** at the bottom of the page.
-
-
-
-Your course URL will be `username.github.io/your-repo-name`, displayed under **Settings** > **Pages**. You can customize the base GitHub Pages URL (e.g., `jhudatascience.org`).
-
--**Warning**: If you visit your URL before pushing any file changes, you may see a 404 error — nothing has been triggered to render yet. Check the URL after filing your first pull request. -
- -#### 8. Enroll for updates (recommended) - -The templates are always a work in progress. When updates are made to non-content files (checks, automation), pull requests are automatically filed to downstream repositories. - -**To get sync updates, add `jhudsl-robot` as a collaborator** with write access: go to **Settings** > **Collaborators & Teams** > **Add people** and search for `jhudsl-robot`. - -
-
-Then add your repository name to the [OTTR_Template sync file](https://github.com/ottrproject/OTTR_Template/blob/main/.github/sync.yml).
-
-If you're **not** a member of the jhudsl GitHub organization, you can:
-
-- Submit your repo info via the [OTTR Feedback Google Form](https://forms.gle/jGQnd5oemHWyuUq28)
-- [Open an issue](https://github.com/ottrproject/OTTR_Template/issues/new?assignees=kweav&labels=&projects=&template=new-course-add-to-sync.md&title=) with your repo name and we'll add it
-- Fork the repo, edit `sync.yml` by adding your repo name where it says `#NEW REPO HERE#`, and open a PR
-
-
-
-| Repository | Issue Links |
-|:---:|:---|
-| OTTR_Template | [General issue](https://github.com/ottrproject/OTTR_Template/issues/new/choose) · [Add new repo to sync](https://github.com/ottrproject/OTTR_Template/issues/new?assignees=kweav&labels=&projects=&template=new-course-add-to-sync.md&title=) · [Update repo info in sync](https://github.com/ottrproject/OTTR_Template/issues/new?assignees=kweav&labels=&projects=&template=update-course-info-for-sync.md&title=) |
-| OTTR_Quizzes | [Open an issue](https://github.com/jhudsl/OTTR_Quizzes/issues/new/choose) |
-
--_If you have any questions about these updates or files, please tag `@kweav` or `@carriewright11`._ -
- ---- +::: {.template-actions} +[Full setup guide with screenshots](rmd-course.qmd) [Next Steps](next_steps.qmd) → +::: + + ## Websites -### Quarto Websites +::: {.path-header} +**Use this path when:** you want a project website, documentation site, resource hub, or public-facing guide without course-style chapters. +::: + +### Quarto Websites {.toc-anchor-heading} - +
-
-#### 6. Set up your GitHub personal access token
-
-Go to **Settings** > **Secrets and variables** > **Actions** > **Repository secrets** and click **New repository secret**.
-
-- **Name**: `GH_PAT` (this exact name is required)
-- **Secret**: create a [classic personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-personal-access-token-classic) with `repo` and `workflow` scopes checked.
-
-#### 7. Set up GitHub Pages
-
-In your repository, go to **Settings** > **Pages** and configure:
-
-- **Source**: Deploy from a branch
-- **Branch**: `main`, folder `/docs`
-
-Click **Save**, then check **Enforce HTTPS** at the bottom of the page.
-
-
-
--**Warning**: If you visit your URL before pushing any file changes, you may see a 404 error. Check after filing your first pull request. -
- -#### 8. Enroll for updates (recommended) - -Add `jhudsl-robot` as a collaborator with write access (**Settings** > **Collaborators & Teams**), then add your repository name to the relevant sync file. [See full instructions here](https://www.ottrproject.org/getting_started.html#which-sync-file-should-you-edit). - -#### Start writing! - -Content is written in `.qmd` files using standard [Quarto syntax](https://quarto.org/docs/authoring/markdown-basics.html). +[Next Steps](next_steps.qmd) → +::: ---- + -[Next Steps](next_steps.qmd) → +### R Markdown Websites {.toc-anchor-heading} -### R Markdown Websites +
-
-#### 6. Set up your GitHub personal access token
-
-Go to **Settings** > **Secrets and variables** > **Actions** > **Repository secrets** and click **New repository secret**.
-
-- **Name**: `GH_PAT` (this exact name is required)
-- **Secret**: create a [classic personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-personal-access-token-classic) with `repo` and `workflow` scopes checked.
-
-If you encounter any problems, [report an issue here](https://github.com/ottrproject/OTTR_Template_Website/issues/new/choose).
-
-#### 7. Set up GitHub Pages
-
-In your repository, go to **Settings** > **Pages** and configure:
-
-- **Source**: Deploy from a branch
-- **Branch**: `main`, folder `/docs`
-
-Click **Save**, then check **Enforce HTTPS** at the bottom of the page.
-
-
-
--**Warning**: If you visit your URL before pushing any file changes, you may see a 404 error. Check after filing your first pull request. -
- -#### 8. Enroll for updates (recommended) - -Add `jhudsl-robot` as a collaborator with write access (**Settings** > **Collaborators & Teams**), then add your repository name to the [OTTR_Template_Website sync file](https://github.com/ottrproject/OTTR_Template_Website/blob/main/.github/sync.yml). - -If you're **not** a member of the jhudsl GitHub organization, you can: - -- Submit your repo info via the [OTTR Feedback Google Form](https://forms.gle/jGQnd5oemHWyuUq28) -- [Open an issue](https://github.com/ottrproject/OTTR_Template_Website/issues/new?assignees=kweav&labels=&projects=&template=new-website-add-to-sync.md&title=) with your repo name and we'll add it - -| Repository | Issue Links | -|:---:|:---| -| OTTR_Template_Website | [General issue](https://github.com/ottrproject/OTTR_Template_Website/issues/new/choose) · [Add new repo to sync](https://github.com/ottrproject/OTTR_Template_Website/issues/new?assignees=kweav&labels=&projects=&template=new-website-add-to-sync.md&title=) | - --_If you have any questions about these updates or files, please tag `@kweav` or `@carriewright11`._ -
- ---- +::: {.template-actions} +[Full setup guide with screenshots](rmd-website.qmd) [Next Steps](next_steps.qmd) → +::: + + ## Dashboards ### Metricminer Dashboard +::: {.path-header} +**Use this path when:** you want a dashboard that reports project metrics from GitHub, Google Analytics, Google Forms, CRAN, Calendly, and other sources. + **Template repository:** [ottrproject/metricminer-dashboard](https://github.com/ottrproject/metricminer-dashboard) +::: -A dashboard template powered by the [`metricminer`](https://www.metricminer.org/) R package. Displays metrics from GitHub, Google Analytics, Google Forms, CRAN, Calendly, and more. +1. Create a new repository from the [metricminer-dashboard template](https://github.com/ottrproject/metricminer-dashboard). +2. Make the repository public, then enable GitHub Actions **Read and write permissions** and **Allow GitHub Actions to create and approve pull requests**. +3. Add a repository secret named `GH_PAT` using a classic personal access token with `repo` and `workflow` scopes. +4. Add credentials for the metric sources you want to collect from. +5. Deploy from the `main` branch and `/docs` folder in GitHub Pages, then enable HTTPS. -#### 1. Create a repository from the template + +
-#### 6. Set up your GitHub personal access token
-
-Go to **Settings** > **Secrets and variables** > **Actions** > **Repository secrets** and click **New repository secret**.
+Go to **Settings** > **Secrets and variables** > **Actions** > **Repository secrets** and click **New repository secret**. Add:
- **Name**: `GH_PAT` (this exact name is required)
- **Secret**: create a [classic personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-personal-access-token-classic) with `repo` and `workflow` scopes checked.
-#### 7. Configure your data source credentials
-
Set up credentials for whichever metric sources you want to collect from. Each source requires its own repository secret — see the [metricminer documentation](https://www.metricminer.org/) for the specific tokens needed (Google Analytics, GitHub, etc.).
-#### 8. Set up GitHub Pages
-
In your repository, go to **Settings** > **Pages** and configure:
- **Source**: Deploy from a branch
@@ -446,10 +229,10 @@ Click **Save**, then check **Enforce HTTPS** at the bottom of the page.
**Warning**: If you visit your URL before pushing any file changes, you may see a 404 error. Check after filing your first pull request.
-#### Start customizing!
-
Edit the `.Rmd` files in the repository to configure which metrics to display and how to arrange them. See [metricminer.org](https://www.metricminer.org/) for full documentation.
+
+
+#### 6. Set up your GitHub personal access token
+
+Go to **Settings** > **Secrets and variables** > **Actions** > **Repository secrets** and click **New repository secret**.
+
+- **Name**: `GH_PAT` (this exact name is required)
+- **Secret**: create a [classic personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-personal-access-token-classic) with `repo` and `workflow` scopes checked.
+
+#### 7. Set up GitHub Pages
+
+In your repository, go to **Settings** > **Pages** and configure:
+
+- **Source**: Deploy from a branch
+- **Branch**: `main`, folder `/docs`
+
+Click **Save**, then check **Enforce HTTPS** at the bottom of the page.
+
+
+
++**Warning**: If you visit your URL before pushing any file changes, you may see a 404 error. Check after filing your first pull request. +
+ +#### 8. Enroll for updates (recommended) + +Add `jhudsl-robot` as a collaborator with write access (**Settings** > **Collaborators & Teams**), then add your repository name to the relevant sync file. [See full instructions here](https://www.ottrproject.org/getting_started.html#which-sync-file-should-you-edit). + +#### Start writing! + +Content is written in `.qmd` files using standard [Quarto syntax](https://quarto.org/docs/authoring/markdown-basics.html). + +[Next Steps](next_steps.qmd) → diff --git a/quarto-website.qmd b/quarto-website.qmd new file mode 100644 index 0000000..d18cb6f --- /dev/null +++ b/quarto-website.qmd @@ -0,0 +1,71 @@ +--- +title: "Getting started: Quarto Websites" +format: html +--- + + +A Quarto-based website template. Recommended for all new projects. + +#### 1. Create a repository from the template + +On the [landing page of the OTTR_Quarto repository](https://github.com/ottrproject/OTTR_Quarto), locate the green **Use this template** button in the upper right corner. Click it, then select **Create a new repository** and follow the instructions. + + + +#### 2. Name your repository and fill in a short description + +Enter a name in the **Repository name** field and provide a brief description in the **Description** box. + + + +#### 3. Ensure your repository is set to `public` + +Make sure to set it [to a public repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility). The rendered pull request preview won't work on private repositories. + +#### 4. Click `Create repository from template` to proceed + +After creating your repository, issues with setup instructions will be automatically filed. Navigate to the **Issues** tab and follow the instructions there. + +#### 5. Check your GitHub Actions settings + +Go to **Settings** > **Actions** > **General**. Make sure you have: + +1. Given **Read and write permissions** +2. Checked **Allow GitHub Actions to create and approve pull requests** + +Then click **Save**. + +
+
+#### 6. Set up your GitHub personal access token
+
+Go to **Settings** > **Secrets and variables** > **Actions** > **Repository secrets** and click **New repository secret**.
+
+- **Name**: `GH_PAT` (this exact name is required)
+- **Secret**: create a [classic personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-personal-access-token-classic) with `repo` and `workflow` scopes checked.
+
+#### 7. Set up GitHub Pages
+
+In your repository, go to **Settings** > **Pages** and configure:
+
+- **Source**: Deploy from a branch
+- **Branch**: `main`, folder `/docs`
+
+Click **Save**, then check **Enforce HTTPS** at the bottom of the page.
+
+
+
++**Warning**: If you visit your URL before pushing any file changes, you may see a 404 error. Check after filing your first pull request. +
+ +#### 8. Enroll for updates (recommended) + +Add `jhudsl-robot` as a collaborator with write access (**Settings** > **Collaborators & Teams**), then add your repository name to the relevant sync file. [See full instructions here](https://www.ottrproject.org/getting_started.html#which-sync-file-should-you-edit). + +#### Start writing! + +Content is written in `.qmd` files using standard [Quarto syntax](https://quarto.org/docs/authoring/markdown-basics.html). + + +[Next Steps](next_steps.qmd) → diff --git a/resources/dictionary.txt b/resources/dictionary.txt index 729a9db..2cb76b3 100644 --- a/resources/dictionary.txt +++ b/resources/dictionary.txt @@ -112,4 +112,6 @@ useR voiceover qmd theming - +ColorBuddy +Venngage +WCAG diff --git a/rmd-course.qmd b/rmd-course.qmd new file mode 100644 index 0000000..1bc4f4b --- /dev/null +++ b/rmd-course.qmd @@ -0,0 +1,97 @@ +--- +title: "Getting started: R Markdown Courses" +--- + +An R Markdown / Bookdown-based course template with a table of contents on the side. Supports publishing to Coursera and Leanpub. Best choice when you have existing `.Rmd` files to build on. + +
+
+#### 1. Create a repository from the template
+
+On the [landing page of the OTTR_Template repository](https://github.com/ottrproject/OTTR_Template), locate the green **Use this template** button in the upper right corner. Click it, then select **Create a new repository** and follow the instructions to configure your repository.
+
+
+
+#### 2. Name your repository and fill in a short description
+
+Enter a name in the **Repository name** field and provide a brief description in the **Description** box.
+
+
+
+#### 3. Ensure your repository is set to `public`
+
+Make sure to set it [to a public repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility). The rendered pull request preview won't work on private repositories (though you can preview content locally).
+
+#### 4. Click `Create repository from template` to proceed
+
+After creating your repository, issues with setup instructions will be automatically filed. Navigate to the **Issues** tab and follow the instructions there.
+
+#### 5. Check your GitHub Actions settings
+
+Go to **Settings** > **Actions** > **General**. Make sure you have:
+
+1. Given **Read and write permissions**
+2. Checked **Allow GitHub Actions to create and approve pull requests**
+
+Then click **Save**.
+
+
+
+#### 6. Set up your GitHub personal access token
+
+To give OTTR's robots the permissions they need, set a GitHub Secret called `GH_PAT`. Go to **Settings** > **Secrets and variables** > **Actions** and scroll down to **Repository secrets**. ([Read more about GitHub Secrets here](https://docs.github.com/en/actions/security-guides/encrypted-secrets).)
+
+If you have organization admin privileges and plan to make multiple courses, you can set `GH_PAT` as an organization secret so you only need to do this once.
+
+- Click **New repository secret** / **New organization secret**.
+- Under **Name**, enter `GH_PAT` (this exact name is required).
+- For **Secret**: create a [classic personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-personal-access-token-classic) with `repo` and `workflow` scopes checked. Copy and paste it as the secret value.
+
+If you encounter any problems, [report an issue here](https://github.com/ottrproject/OTTR_Template/issues/new?assignees=&labels=bug&projects=&template=course-problem-report.md&title%5B%5D=Problem).
+
+#### 7. Set up GitHub Pages
+
+In your repository, go to **Settings** > **Pages** and configure:
+
+- **Source**: Deploy from a branch
+- **Branch**: `main`, folder `/docs`
+
+Click **Save**, then check **Enforce HTTPS** at the bottom of the page.
+
+
+
+Your course URL will be `username.github.io/your-repo-name`, displayed under **Settings** > **Pages**. You can customize the base GitHub Pages URL (e.g., `jhudatascience.org`).
+
++**Warning**: If you visit your URL before pushing any file changes, you may see a 404 error — nothing has been triggered to render yet. Check the URL after filing your first pull request. +
+ +#### 8. Enroll for updates (recommended) + +The templates are always a work in progress. When updates are made to non-content files (checks, automation), pull requests are automatically filed to downstream repositories. + +**To get sync updates, add `jhudsl-robot` as a collaborator** with write access: go to **Settings** > **Collaborators & Teams** > **Add people** and search for `jhudsl-robot`. + +
+
+Then add your repository name to the [OTTR_Template sync file](https://github.com/ottrproject/OTTR_Template/blob/main/.github/sync.yml).
+
+If you're **not** a member of the jhudsl GitHub organization, you can:
+
+- Submit your repo info via the [OTTR Feedback Google Form](https://forms.gle/jGQnd5oemHWyuUq28)
+- [Open an issue](https://github.com/ottrproject/OTTR_Template/issues/new?assignees=kweav&labels=&projects=&template=new-course-add-to-sync.md&title=) with your repo name and we'll add it
+- Fork the repo, edit `sync.yml` by adding your repo name where it says `#NEW REPO HERE#`, and open a PR
+
+
+
+| Repository | Issue Links |
+|:---:|:---|
+| OTTR_Template | [General issue](https://github.com/ottrproject/OTTR_Template/issues/new/choose) · [Add new repo to sync](https://github.com/ottrproject/OTTR_Template/issues/new?assignees=kweav&labels=&projects=&template=new-course-add-to-sync.md&title=) · [Update repo info in sync](https://github.com/ottrproject/OTTR_Template/issues/new?assignees=kweav&labels=&projects=&template=update-course-info-for-sync.md&title=) |
+| OTTR_Quizzes | [Open an issue](https://github.com/jhudsl/OTTR_Quizzes/issues/new/choose) |
+
++_If you have any questions about these updates or files, please tag `@kweav` or `@carriewright11`._ +
+ + +[Next Steps](next_steps.qmd) → diff --git a/rmd-website.qmd b/rmd-website.qmd new file mode 100644 index 0000000..a283191 --- /dev/null +++ b/rmd-website.qmd @@ -0,0 +1,81 @@ +--- +title: "Getting Started: R Markdown Websites" +--- + + +An R Markdown / Bookdown-based website template with a nav bar on top. Best choice if you have existing `.Rmd` files to build on. + +#### 1. Create a repository from the template + +On the [landing page of the OTTR_Template_Website repository](https://github.com/ottrproject/OTTR_Template_Website), locate the green **Use this template** button in the upper right corner. Click it, then select **Create a new repository** and follow the instructions. + + + +#### 2. Name your repository and fill in a short description + +Enter a name in the **Repository name** field and provide a brief description in the **Description** box. + + + +#### 3. Ensure your repository is set to `public` + +Make sure to set it [to a public repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility). The rendered pull request preview won't work on private repositories. + +#### 4. Click `Create repository from template` to proceed + +After creating your repository, issues with setup instructions will be automatically filed. Navigate to the **Issues** tab and follow the instructions there. + +#### 5. Check your GitHub Actions settings + +Go to **Settings** > **Actions** > **General**. Make sure you have: + +1. Given **Read and write permissions** +2. Checked **Allow GitHub Actions to create and approve pull requests** + +Then click **Save**. + +
+
+#### 6. Set up your GitHub personal access token
+
+Go to **Settings** > **Secrets and variables** > **Actions** > **Repository secrets** and click **New repository secret**.
+
+- **Name**: `GH_PAT` (this exact name is required)
+- **Secret**: create a [classic personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-personal-access-token-classic) with `repo` and `workflow` scopes checked.
+
+If you encounter any problems, [report an issue here](https://github.com/ottrproject/OTTR_Template_Website/issues/new/choose).
+
+#### 7. Set up GitHub Pages
+
+In your repository, go to **Settings** > **Pages** and configure:
+
+- **Source**: Deploy from a branch
+- **Branch**: `main`, folder `/docs`
+
+Click **Save**, then check **Enforce HTTPS** at the bottom of the page.
+
+
+
++**Warning**: If you visit your URL before pushing any file changes, you may see a 404 error. Check after filing your first pull request. +
+ +#### 8. Enroll for updates (recommended) + +Add `jhudsl-robot` as a collaborator with write access (**Settings** > **Collaborators & Teams**), then add your repository name to the [OTTR_Template_Website sync file](https://github.com/ottrproject/OTTR_Template_Website/blob/main/.github/sync.yml). + +If you're **not** a member of the jhudsl GitHub organization, you can: + +- Submit your repo info via the [OTTR Feedback Google Form](https://forms.gle/jGQnd5oemHWyuUq28) +- [Open an issue](https://github.com/ottrproject/OTTR_Template_Website/issues/new?assignees=kweav&labels=&projects=&template=new-website-add-to-sync.md&title=) with your repo name and we'll add it + +| Repository | Issue Links | +|:---:|:---| +| OTTR_Template_Website | [General issue](https://github.com/ottrproject/OTTR_Template_Website/issues/new/choose) · [Add new repo to sync](https://github.com/ottrproject/OTTR_Template_Website/issues/new?assignees=kweav&labels=&projects=&template=new-website-add-to-sync.md&title=) | + ++_If you have any questions about these updates or files, please tag `@kweav` or `@carriewright11`._ +
+ + +[Next Steps](next_steps.qmd) → diff --git a/styles.css b/styles.css index 1812c01..89ea638 100644 --- a/styles.css +++ b/styles.css @@ -5,11 +5,20 @@ margin-top: 100px; } +:root { + --ottr-soft: lightblue; + --ottr-accent: #1f2d3d; + --ottr-accent-dark: RoyalBlue; + --ottr-border: #ADD8E6; + --ottr-link: #2a7a9a; + --ottr-text: #1f2d3d; +} + /* add some color - if you want color behind a major point on your website */ .banner_color { - background-color: lightblue; + background-color: var(--ottr-soft); font-weight:bold; } @@ -23,7 +32,7 @@ /* Style buttons - if you want to have a button */ .btn { - background-color: DodgerBlue; + background-color: var(--ottr-accent); border: none; color: white; padding: 8px 20px; @@ -33,7 +42,273 @@ /* Darker background on mouse-over */ .btn:hover { - background-color: RoyalBlue; + background-color: var(--ottr-accent-dark); +} + +/* Indent nested items in the Quarto table of contents. */ +#TOC ul { + margin-left: 0; + padding-left: 0; +} + +#TOC li { + margin-left: 0; +} + +#TOC .nav-link { + padding-left: 0.25rem; +} + +#TOC ul ul { + margin-left: 0.35rem; + padding-left: 0.9rem; + border-left: 1px solid rgba(0, 0, 0, 0.12); +} + +#TOC ul ul .nav-link { + padding-left: 0.35rem; } +#TOC ul ul ul { + margin-left: 0.2rem; + padding-left: 0.85rem; +} + +#TOC ul ul ul .nav-link { + font-size: 0.95em; +} + +/* Top-level chooser for the Getting Started page. */ +.intro-grid { + display: grid; + grid-template-columns: minmax(260px, 0.85fr) minmax(340px, 1.15fr); + gap: 2rem; + align-items: start; + margin: 1.5rem 0 2.75rem; +} + +.intro-prereqs, +.template-chooser { + min-width: 0; +} + +.intro-prereqs h2, +.template-chooser h2 { + margin-top: 0; +} + +.intro-prereqs ul { + padding-left: 1.1rem; +} +.intro-prereqs li { + margin-bottom: 0.55rem; +} + +.chooser-gallery { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 1rem; +} + +.chooser-card { + display: flex; + height: 100%; + min-height: 13rem; + flex-direction: column; + gap: 0.55rem; + padding: 1rem; + color: var(--ottr-text); + text-decoration: none; + background: white; + border: 1px solid var(--ottr-border); + border-radius: 8px; +} + +.chooser-card:hover, +.chooser-card:focus { + color: var(--ottr-text); + text-decoration: none; + background: var(--ottr-soft); + border-color: var(--ottr-accent); +} + +.chooser-kicker { + width: fit-content; + padding: 0.1rem 0.45rem; + color: white; + font-size: 0.8rem; + font-weight: 700; + background: var(--ottr-accent); + border: 1px solid var(--ottr-accent); + border-radius: 999px; +} + +.chooser-title { + color: var(--ottr-text); + font-size: 1.15rem; + font-weight: 700; +} + +.chooser-copy { + font-size: 0.95rem; + line-height: 1.35; +} + +/* Template path sections. */ +.path-header, +.setup-checklist { + margin: 1rem 0 1.25rem; + padding: 1rem 1.25rem; + color: var(--ottr-text); + background: #f8fbfc; + border-left: 5px solid var(--ottr-accent); + border-radius: 8px; +} + +.path-header p:last-child, +.setup-checklist ol:last-child { + margin-bottom: 0; +} + +.setup-checklist li { + margin-bottom: 0.45rem; +} + +h3.toc-anchor-heading { + height: 0; + margin: 0; + overflow: hidden; + scroll-margin-top: 7rem; +} + +h3.toc-anchor-heading .anchorjs-link { + display: none; +} + +.template-choice { + margin: 1rem 0 1.5rem; + border: 1px solid var(--ottr-border); + border-radius: 8px; + overflow: hidden; +} + +.template-choice summary { + display: grid; + grid-template-columns: max-content minmax(10rem, 1fr) max-content; + gap: 0.25rem 0.75rem; + align-items: center; + padding: 0.85rem 1rem; + color: var(--ottr-text); + cursor: pointer; + background: #f8fbfc; +} + +.template-choice summary:hover, +.template-choice summary:focus { + background: var(--ottr-soft); +} + +.template-choice[open] summary { + border-bottom: 1px solid var(--ottr-border); +} + +.template-choice summary::after { + grid-row: span 2; + color: var(--ottr-text); + content: "Show"; + font-size: 0.85rem; + font-weight: 700; +} + +.template-choice[open] summary::after { + content: "Hide"; +} + +.choice-badge { + grid-row: span 2; + width: fit-content; + padding: 0.15rem 0.5rem; + color: white; + font-size: 0.78rem; + font-weight: 700; + background: var(--ottr-accent); + border-radius: 999px; +} + +.choice-title { + color: var(--ottr-text); + font-size: 1.05rem; + font-weight: 700; +} + +.choice-note { + font-size: 0.92rem; +} + +.template-choice > p, +.template-choice > ul, +.template-choice > ol, +.template-choice > div, +.template-choice > .cheatsheet-frame { + margin-right: 1rem; + margin-left: 1rem; +} + +.template-choice > p:first-of-type { + margin-top: 1rem; +} + +.cheatsheet-frame { + margin: 1.25rem 0 1rem; +} + +.cheatsheet-frame iframe { + width: 100%; + height: 2820px; + border: 1.5px solid var(--ottr-border); + border-radius: 8px; +} + +.cheatsheet-link { + margin-top: 0.25rem; + text-align: right; +} + +.cheatsheet-link a { + color: var(--ottr-link); + font-size: 1rem; +} + +.template-actions { + display: flex; + flex-wrap: wrap; + gap: 0.35rem 1rem; + margin-top: 0.75rem; +} + +.template-actions p { + margin: 0; +} + +@media (max-width: 900px) { + .intro-grid { + grid-template-columns: 1fr; + } + + .chooser-gallery { + grid-template-columns: 1fr; + } + + .chooser-card { + min-height: 0; + } + + .template-choice summary { + grid-template-columns: 1fr; + } + + .choice-badge { + grid-row: auto; + } +} diff --git a/writing_content_courses.qmd b/writing_content_courses.qmd index 214f05b..af0bb05 100644 --- a/writing_content_courses.qmd +++ b/writing_content_courses.qmd @@ -408,6 +408,28 @@ If you encounter situations where a spelling report or URL report doesn't look a # Adding new chapters Adding new chapters to your OTTR course requires a few specific steps depending on whether you are using Quarto or R Markdown. + +