Skip to content

Commit 4bde76a

Browse files
committed
Initial commit
0 parents  commit 4bde76a

34 files changed

+6638
-0
lines changed

.github/workflows/main.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# .github/workflows/quarto-render.yml
2+
name: Render and deploy Quarto files
3+
on:
4+
push:
5+
pull_request:
6+
7+
jobs:
8+
quarto-render-and-deploy:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@v2
12+
13+
- name: "Install Quarto and render"
14+
uses: pommevilla/[email protected]
15+

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
data

.nojekyll

Whitespace-only changes.

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2022 Sydney Informatics Hub
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
---
2+
title: "SIH Quarto Training template"
3+
---
4+
# Read me
5+
6+
- We recommend storing all notebooks (.ipynb) or R files (as .qmd or .rmd) in the `notebooks` folder.
7+
8+
## How to use
9+
10+
- Copy this repository
11+
- Edit `index.qmd` to change the main landing page.
12+
- Edit or create `setup.qmd` to change the Setup instruction pages.
13+
- Edit `_quarto.yml` to change the dropdown menu options.
14+
- Add additional `*.md` files to the root dir to have them converted to html files (and add them to `_quarto.yml` to make them navigable).
15+
16+
- If using Python, use VSCode's [Quarto Extension](https://quarto.org/docs/tools/vscode.html) to render the project (recommended b/c it's easier/nice)
17+
- If using R, type `quarto render` in the Terminal in RStudio (not the R command line, the Terminal tab!) - or use the buttons
18+
- If you want to command line, run the below commands (after activating the correct Python environment, if needed)
19+
20+
## Note:
21+
22+
- If using Python, you will need to have Jupyter and Quarto installed to convert the notebooks and render them for the web.
23+
- If using R, you will need rmarkdown, xml2 and X to have the notebooks generate properly and link out to the documentation, as specified in the `_quarto.yml` file.
24+
- The building from Jupyter notebooks will NOT re-render all of the notebooks unless you use the `quarto render notebook.ipynb --execute` command
25+
- Building from R will by default re-render all of the outputs
26+
27+
28+
```
29+
quarto render
30+
#First time you create the file, add them to be tracked by github, e.g.
31+
git add docs/*
32+
git commit -am "your comments"
33+
git push
34+
```
35+
36+
You can browse the result locally by exploring the html files created (note: sometimes figures display locally but not on web and the other way around too.)

_quarto.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
project:
2+
type: website
3+
output-dir: docs
4+
5+
website:
6+
title: "Sydney Informatics Hub Course name"
7+
navbar:
8+
background: primary
9+
left:
10+
- href: index.qmd
11+
text: Home
12+
- href: setup.html
13+
text: "Setup"
14+
- text: "Session 1"
15+
menu:
16+
- text: "Fundamentals"
17+
href: notebooks/01a-fundamentals.html
18+
19+
body-footer: "All materials copyright Sydney Informatics Hub, University of Sydney"
20+
21+
format:
22+
html:
23+
theme: simplex
24+
css: lesson.css
25+
toc: true
26+
code-overflow: wrap
27+
highlight-style: github
28+
29+
30+
31+

docs/index.html

Lines changed: 266 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,266 @@
1+
<!DOCTYPE html>
2+
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
3+
4+
<meta charset="utf-8">
5+
<meta name="generator" content="quarto-0.9.345">
6+
7+
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
8+
9+
10+
<title>Sydney Informatics Hub Course name - Course title</title>
11+
<style>
12+
code{white-space: pre-wrap;}
13+
span.smallcaps{font-variant: small-caps;}
14+
span.underline{text-decoration: underline;}
15+
div.column{display: inline-block; vertical-align: top; width: 50%;}
16+
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
17+
ul.task-list{list-style: none;}
18+
</style>
19+
20+
<script src="site_libs/quarto-nav/quarto-nav.js"></script>
21+
<script src="site_libs/quarto-nav/headroom.min.js"></script>
22+
<script src="site_libs/clipboard/clipboard.min.js"></script>
23+
<meta name="quarto:offset" content="./">
24+
<script src="site_libs/quarto-search/autocomplete.umd.js"></script>
25+
<script src="site_libs/quarto-search/fuse.min.js"></script>
26+
<script src="site_libs/quarto-search/quarto-search.js"></script>
27+
<script src="site_libs/quarto-html/quarto.js"></script>
28+
<script src="site_libs/quarto-html/popper.min.js"></script>
29+
<script src="site_libs/quarto-html/tippy.umd.min.js"></script>
30+
<script src="site_libs/quarto-html/anchor.min.js"></script>
31+
<link href="site_libs/quarto-html/tippy.css" rel="stylesheet">
32+
<link id="quarto-text-highlighting-styles" href="site_libs/quarto-html/quarto-syntax-highlighting.css" rel="stylesheet">
33+
<script src="site_libs/bootstrap/bootstrap.min.js"></script>
34+
<link href="site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet">
35+
<link href="site_libs/bootstrap/bootstrap.min.css" rel="stylesheet">
36+
<script id="quarto-search-options" type="application/json">{
37+
"location": "navbar",
38+
"copy-button": false,
39+
"collapse-after": 3,
40+
"panel-placement": "end",
41+
"type": "overlay",
42+
"limit": 20,
43+
"language": {
44+
"search-no-results-text": "No results",
45+
"search-matching-documents-text": "matching documents",
46+
"search-copy-link-title": "Copy link to search",
47+
"search-hide-matches-text": "Hide additional matches",
48+
"search-more-match-text": "more match in this document",
49+
"search-more-matches-text": "more matches in this document",
50+
"search-clear-button-title": "Clear",
51+
"search-detached-cancel-button-title": "Cancel",
52+
"search-submit-button-title": "Submit"
53+
}
54+
}</script>
55+
56+
57+
<link rel="stylesheet" href="lesson.css">
58+
</head>
59+
60+
<body class="nav-fixed">
61+
62+
<div id="quarto-search-results"></div>
63+
<header id="quarto-header" class="headroom fixed-top">
64+
<nav class="navbar navbar-expand-lg navbar-dark ">
65+
<div class="navbar-container container-fluid">
66+
<a class="navbar-brand" href="./index.html">
67+
<span class="navbar-title">Sydney Informatics Hub Course name</span>
68+
</a>
69+
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
70+
<span class="navbar-toggler-icon"></span>
71+
</button>
72+
<div class="collapse navbar-collapse" id="navbarCollapse">
73+
<ul class="navbar-nav navbar-nav-scroll me-auto">
74+
<li class="nav-item">
75+
<a class="nav-link active" href="./index.html" aria-current="page">Home</a>
76+
</li>
77+
<li class="nav-item">
78+
<a class="nav-link" href="./setup.html">Setup</a>
79+
</li>
80+
<li class="nav-item dropdown ">
81+
<a class="nav-link dropdown-toggle" href="#" id="nav-menu-session-1" role="button" data-bs-toggle="dropdown" aria-expanded="false">Session 1</a>
82+
<ul class="dropdown-menu" aria-labelledby="nav-menu-session-1">
83+
<li>
84+
<a class="dropdown-item" href="./notebooks/01a-fundamentals.html">
85+
<span class="dropdown-text">Fundamentals</span></a>
86+
</li>
87+
</ul>
88+
</li>
89+
</ul>
90+
<div id="quarto-search" class="" title="Search"></div>
91+
</div> <!-- /navcollapse -->
92+
</div> <!-- /container-fluid -->
93+
</nav>
94+
</header>
95+
<!-- content -->
96+
<div id="quarto-content" class="quarto-container page-columns page-rows-contents page-layout-article page-navbar">
97+
<!-- sidebar -->
98+
<!-- margin-sidebar -->
99+
<div id="quarto-margin-sidebar" class="sidebar margin-sidebar">
100+
<nav id="TOC" role="doc-toc">
101+
<h2 id="toc-title">On this page</h2>
102+
103+
<ul>
104+
<li><a href="#trainers" id="toc-trainers" class="nav-link active" data-scroll-target="#trainers">Trainers</a></li>
105+
<li><a href="#course-pre-requisites-and-setup-requirements" id="toc-course-pre-requisites-and-setup-requirements" class="nav-link" data-scroll-target="#course-pre-requisites-and-setup-requirements">Course pre-requisites and setup requirements</a></li>
106+
<li><a href="#venue-online-via-zoom" id="toc-venue-online-via-zoom" class="nav-link" data-scroll-target="#venue-online-via-zoom">Venue, online via Zoom</a></li>
107+
<li><a href="#code-of-conduct" id="toc-code-of-conduct" class="nav-link" data-scroll-target="#code-of-conduct">Code of Conduct</a></li>
108+
<li><a href="#general-session-timings" id="toc-general-session-timings" class="nav-link" data-scroll-target="#general-session-timings">General session timings</a></li>
109+
<li><a href="#setup-instructions" id="toc-setup-instructions" class="nav-link" data-scroll-target="#setup-instructions">Setup Instructions</a></li>
110+
</ul>
111+
</nav>
112+
</div>
113+
<!-- main -->
114+
<main class="content" id="quarto-document-content">
115+
116+
<header id="title-block-header" class="quarto-title-block default">
117+
<div class="quarto-title">
118+
<h1 class="title">Course title</h1>
119+
</div>
120+
121+
122+
123+
124+
125+
<div class="quarto-title-meta">
126+
127+
128+
129+
</div>
130+
131+
132+
</header>
133+
134+
<p>This course is aimed at researchers, students, and industry professionals who want to learn about …</p>
135+
<section id="trainers" class="level2">
136+
<h2 class="anchored" data-anchor-id="trainers">Trainers</h2>
137+
<ul>
138+
<li>Nathaniel (Nate) Butterworth (PhD Computational Geophysics), [email protected]</li>
139+
<li>Darya Vanichkina (PhD Bioinformatics, SFHEA)</li>
140+
<li>Kristian Maras (MSc Quant Fin)</li>
141+
</ul>
142+
</section>
143+
<section id="course-pre-requisites-and-setup-requirements" class="level2">
144+
<h2 class="anchored" data-anchor-id="course-pre-requisites-and-setup-requirements">Course pre-requisites and setup requirements</h2>
145+
<p>No previous programming experience is required, but <strong>Session 1 is a pre-requisite for the other sessions</strong>. Training will be delivered online, so you will need access to a modern computer with a stable internet connection and around 5GB of storage space for data downloaded prior to the course. Participants are encouraged to setup a Python environment on their local computer (as per the <a href="./setup.html">Setup Instructions</a> provided), but participation using other platforms/environments can be supported where necessary.</p>
146+
</section>
147+
<section id="venue-online-via-zoom" class="level2">
148+
<h2 class="anchored" data-anchor-id="venue-online-via-zoom">Venue, online via Zoom</h2>
149+
<p>Participants will be provided with a Zoom link. Trainers will be broadcasting from Sydney.</p>
150+
<section id="zoom-etiquette-and-how-we-interact" class="level4">
151+
<h4 class="anchored" data-anchor-id="zoom-etiquette-and-how-we-interact">Zoom etiquette and how we interact</h4>
152+
<p>Sessions will be recorded for attendees only, and it is set up to only record the host shared screen and host audio. We will try and get these uploaded to this site as soon as possible. Please interrupt whenever you want! Ideally, have your camera on and interact as much as possible. There will be someone monitoring the chat-window with any questions you would like to post there. Four hours is a long Zoom session so we have plenty of scheduled breaks combined with a mix of content to be delivered as demos, plus sections as independent exercises, but most of the course will be pretty-hands on with everyone writing their own code. We will use Zoom break-out rooms as needed with the Trainers and participants.</p>
153+
</section>
154+
</section>
155+
<section id="code-of-conduct" class="level2">
156+
<h2 class="anchored" data-anchor-id="code-of-conduct">Code of Conduct</h2>
157+
<p>We expect all attendees of our training to follow our code of conduct, including bullying, harassment and discrimination prevention policies.</p>
158+
<p>In order to foster a positive and professional learning environment we encourage the following kinds of behaviours at all our events and on our platforms:</p>
159+
<ul>
160+
<li>Use welcoming and inclusive language</li>
161+
<li>Be respectful of different viewpoints and experiences</li>
162+
<li>Gracefully accept constructive criticism</li>
163+
<li>Focus on what is best for the community</li>
164+
<li>Show courtesy and respect towards other community members</li>
165+
</ul>
166+
<p>Our full CoC, with incident reporting guidelines, is available [here]https://sydney-informatics-hub.github.io/codeofconduct/).</p>
167+
</section>
168+
<section id="general-session-timings" class="level2">
169+
<h2 class="anchored" data-anchor-id="general-session-timings">General session timings</h2>
170+
<ul>
171+
<li></li>
172+
</ul>
173+
</section>
174+
<section id="setup-instructions" class="level2">
175+
<h2 class="anchored" data-anchor-id="setup-instructions">Setup Instructions</h2>
176+
<p>Please complete the <a href="./setup.html">Setup Instructions</a> <strong>before the course</strong>.</p>
177+
<p>If you have any trouble, please get in contact with us ASAP.</p>
178+
179+
180+
</section>
181+
182+
<p>All materials copyright Sydney Informatics Hub, University of Sydney</p></main> <!-- /main -->
183+
<script id="quarto-html-after-body" type="application/javascript">
184+
window.document.addEventListener("DOMContentLoaded", function (event) {
185+
const icon = "";
186+
const anchorJS = new window.AnchorJS();
187+
anchorJS.options = {
188+
placement: 'right',
189+
icon: icon
190+
};
191+
anchorJS.add('.anchored');
192+
const clipboard = new window.ClipboardJS('.code-copy-button', {
193+
target: function(trigger) {
194+
return trigger.previousElementSibling;
195+
}
196+
});
197+
clipboard.on('success', function(e) {
198+
// button target
199+
const button = e.trigger;
200+
// don't keep focus
201+
button.blur();
202+
// flash "checked"
203+
button.classList.add('code-copy-button-checked');
204+
var currentTitle = button.getAttribute("title");
205+
button.setAttribute("title", "Copied!");
206+
setTimeout(function() {
207+
button.setAttribute("title", currentTitle);
208+
button.classList.remove('code-copy-button-checked');
209+
}, 1000);
210+
// clear code selection
211+
e.clearSelection();
212+
});
213+
function tippyHover(el, contentFn) {
214+
const config = {
215+
allowHTML: true,
216+
content: contentFn,
217+
maxWidth: 500,
218+
delay: 100,
219+
arrow: false,
220+
appendTo: function(el) {
221+
return el.parentElement;
222+
},
223+
interactive: true,
224+
interactiveBorder: 10,
225+
theme: 'quarto',
226+
placement: 'bottom-start'
227+
};
228+
window.tippy(el, config);
229+
}
230+
const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]');
231+
for (var i=0; i<noterefs.length; i++) {
232+
const ref = noterefs[i];
233+
tippyHover(ref, function() {
234+
let href = ref.getAttribute('href');
235+
try { href = new URL(href).hash; } catch {}
236+
const id = href.replace(/^#\/?/, "");
237+
const note = window.document.getElementById(id);
238+
return note.innerHTML;
239+
});
240+
}
241+
var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]');
242+
for (var i=0; i<bibliorefs.length; i++) {
243+
const ref = bibliorefs[i];
244+
const cites = ref.parentNode.getAttribute('data-cites').split(' ');
245+
tippyHover(ref, function() {
246+
var popup = window.document.createElement('div');
247+
cites.forEach(function(cite) {
248+
var citeDiv = window.document.createElement('div');
249+
citeDiv.classList.add('hanging-indent');
250+
citeDiv.classList.add('csl-entry');
251+
var biblioDiv = window.document.getElementById('ref-' + cite);
252+
if (biblioDiv) {
253+
citeDiv.innerHTML = biblioDiv.innerHTML;
254+
}
255+
popup.appendChild(citeDiv);
256+
});
257+
return popup.innerHTML;
258+
});
259+
}
260+
});
261+
</script>
262+
</div> <!-- /content -->
263+
264+
265+
266+
</body></html>

0 commit comments

Comments
 (0)