Skip to content

Commit f0d15e8

Browse files
author
Quarto GHA Workflow Runner
committed
Built site for gh-pages
1 parent dc9c679 commit f0d15e8

127 files changed

Lines changed: 11601 additions & 2062 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.nojekyll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
a003e475
1+
b62c7dc3

CONTRIBUTING.html

Lines changed: 134 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -132,8 +132,8 @@
132132
</li>
133133
<li class="sidebar-item">
134134
<div class="sidebar-item-container">
135-
<a href="./pages/why.html" class="sidebar-item-text sidebar-link">
136-
<span class="menu-text">Why make a website for your research?</span></a>
135+
<a href="./pages/why/index.html" class="sidebar-item-text sidebar-link">
136+
<span class="menu-text">Slides: Why make a website for your research?</span></a>
137137
</div>
138138
</li>
139139
<li class="sidebar-item sidebar-item-section">
@@ -147,69 +147,92 @@
147147
<ul id="quarto-sidebar-section-1" class="collapse list-unstyled sidebar-section depth1 show">
148148
<li class="sidebar-item">
149149
<div class="sidebar-item-container">
150-
<a href="./pages/setup.html" class="sidebar-item-text sidebar-link">
150+
<a href="./pages/setup/index.html" class="sidebar-item-text sidebar-link">
151151
<span class="menu-text">Set-up</span></a>
152152
</div>
153153
</li>
154154
<li class="sidebar-item">
155155
<div class="sidebar-item-container">
156-
<a href="./pages/basic_structure.html" class="sidebar-item-text sidebar-link">
156+
<a href="./pages/basic_structure/index.html" class="sidebar-item-text sidebar-link">
157157
<span class="menu-text">Basic structure</span></a>
158158
</div>
159159
</li>
160160
<li class="sidebar-item">
161161
<div class="sidebar-item-container">
162-
<a href="./pages/making_a_change.html" class="sidebar-item-text sidebar-link">
163-
<span class="menu-text">Making a change</span></a>
162+
<a href="./pages/making_a_change/index.html" class="sidebar-item-text sidebar-link">
163+
<span class="menu-text">Exercise 1. Making a change</span></a>
164164
</div>
165165
</li>
166166
<li class="sidebar-item">
167167
<div class="sidebar-item-container">
168-
<a href="./pages/markdown.html" class="sidebar-item-text sidebar-link">
169-
<span class="menu-text">Markdown basics</span></a>
168+
<a href="./pages/markdown/index.html" class="sidebar-item-text sidebar-link">
169+
<span class="menu-text">Exercise 2. Markdown basics</span></a>
170170
</div>
171171
</li>
172172
<li class="sidebar-item">
173173
<div class="sidebar-item-container">
174-
<a href="./pages/quarto_features.html" class="sidebar-item-text sidebar-link">
175-
<span class="menu-text">Quarto features</span></a>
174+
<a href="./pages/quarto_features/index.html" class="sidebar-item-text sidebar-link">
175+
<span class="menu-text">Exercise 3. Quarto features</span></a>
176176
</div>
177177
</li>
178178
<li class="sidebar-item">
179179
<div class="sidebar-item-container">
180-
<a href="./pages/media.html" class="sidebar-item-text sidebar-link">
181-
<span class="menu-text">Images, videos and documents</span></a>
180+
<a href="./pages/media/index.html" class="sidebar-item-text sidebar-link">
181+
<span class="menu-text">Exercise 4. Images, videos and documents</span></a>
182182
</div>
183183
</li>
184184
<li class="sidebar-item">
185185
<div class="sidebar-item-container">
186-
<a href="./pages/inline_html.html" class="sidebar-item-text sidebar-link">
187-
<span class="menu-text">Inline HTML</span></a>
186+
<a href="./pages/inline_html/index.html" class="sidebar-item-text sidebar-link">
187+
<span class="menu-text">Exercise 5. Inline HTML</span></a>
188188
</div>
189189
</li>
190190
<li class="sidebar-item">
191191
<div class="sidebar-item-container">
192-
<a href="./pages/customising.html" class="sidebar-item-text sidebar-link">
193-
<span class="menu-text">Customising the site appearance</span></a>
192+
<a href="./pages/customising/index.html" class="sidebar-item-text sidebar-link">
193+
<span class="menu-text">Exercise 6. Customising the site appearance</span></a>
194194
</div>
195195
</li>
196+
</ul>
197+
</li>
198+
<li class="sidebar-item">
199+
<div class="sidebar-item-container">
200+
<a href="./pages/task/index.html" class="sidebar-item-text sidebar-link">
201+
<span class="menu-text">Task: Create a site for your research</span></a>
202+
</div>
203+
</li>
204+
<li class="sidebar-item sidebar-item-section">
205+
<div class="sidebar-item-container">
206+
<a class="sidebar-item-text sidebar-link text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-2" role="navigation" aria-expanded="true">
207+
<span class="menu-text">Optional extras</span></a>
208+
<a class="sidebar-item-toggle text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-2" role="navigation" aria-expanded="true" aria-label="Toggle section">
209+
<i class="bi bi-chevron-right ms-2"></i>
210+
</a>
211+
</div>
212+
<ul id="quarto-sidebar-section-2" class="collapse list-unstyled sidebar-section depth1 show">
196213
<li class="sidebar-item">
197214
<div class="sidebar-item-container">
198-
<a href="./pages/code.html" class="sidebar-item-text sidebar-link">
199-
<span class="menu-text">Code</span></a>
215+
<a href="./pages/blog/index.html" class="sidebar-item-text sidebar-link">
216+
<span class="menu-text">Listings (e.g., blog)</span></a>
217+
</div>
218+
</li>
219+
<li class="sidebar-item">
220+
<div class="sidebar-item-container">
221+
<a href="./pages/sass_css/index.html" class="sidebar-item-text sidebar-link">
222+
<span class="menu-text">SASS and CSS</span></a>
200223
</div>
201224
</li>
202225
<li class="sidebar-item">
203226
<div class="sidebar-item-container">
204-
<a href="./pages/summary.html" class="sidebar-item-text sidebar-link">
205-
<span class="menu-text">Summary</span></a>
227+
<a href="./pages/code/index.html" class="sidebar-item-text sidebar-link">
228+
<span class="menu-text">Code</span></a>
206229
</div>
207230
</li>
208231
</ul>
209232
</li>
210233
<li class="sidebar-item">
211234
<div class="sidebar-item-container">
212-
<a href="./pages/examples.html" class="sidebar-item-text sidebar-link">
235+
<a href="./pages/examples/index.html" class="sidebar-item-text sidebar-link">
213236
<span class="menu-text">Examples</span></a>
214237
</div>
215238
</li>
@@ -247,7 +270,96 @@ <h2 data-number="1.1" class="anchored" data-anchor-id="all-contributors"><span c
247270
</section>
248271

249272
</main> <!-- /main -->
250-
<script src="./styles/autopreview.js"></script>
273+
<script>
274+
(function () {
275+
const slides = Array.from(document.querySelectorAll('.slide'));
276+
const captionEl = document.getElementById('caption');
277+
const counterEl = document.getElementById('counter');
278+
const thumbsContainer = document.querySelector('.thumbnails');
279+
const stage = document.querySelector('.slide-stage');
280+
let current = 0;
281+
282+
// Build arrow buttons
283+
function makeArrow(dir) {
284+
const btn = document.createElement('button');
285+
btn.className = `arrow arrow-${dir}`;
286+
btn.setAttribute('aria-label', dir === 'left' ? 'Previous slide' : 'Next slide');
287+
btn.innerHTML = dir === 'left'
288+
? '<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="15 18 9 12 15 6"/></svg>'
289+
: '<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"/></svg>';
290+
btn.addEventListener('click', () => goTo(dir === 'left' ? current - 1 : current + 1));
291+
return btn;
292+
}
293+
stage.appendChild(makeArrow('left'));
294+
stage.appendChild(makeArrow('right'));
295+
296+
// Build thumbnails
297+
const thumbEls = slides.map((slide, i) => {
298+
const li = document.createElement('div');
299+
li.className = 'thumb' + (i === 0 ? ' active' : '');
300+
li.setAttribute('role', 'listitem');
301+
li.setAttribute('aria-label', 'Go to slide ' + (i + 1));
302+
const img = document.createElement('img');
303+
img.src = slide.querySelector('img').src;
304+
img.alt = '';
305+
img.loading = 'lazy';
306+
li.appendChild(img);
307+
li.addEventListener('click', () => goTo(i));
308+
thumbsContainer.appendChild(li);
309+
return li;
310+
});
311+
312+
function goTo(index) {
313+
const n = ((index % slides.length) + slides.length) % slides.length;
314+
slides[current].classList.remove('active');
315+
thumbEls[current].classList.remove('active');
316+
current = n;
317+
slides[current].classList.add('active');
318+
thumbEls[current].classList.add('active');
319+
320+
// Fade caption
321+
captionEl.classList.add('fade');
322+
setTimeout(() => {
323+
captionEl.textContent = slides[current].dataset.caption || '';
324+
counterEl.textContent = (current + 1) + ' / ' + slides.length;
325+
captionEl.classList.remove('fade');
326+
}, 150);
327+
328+
// Scroll thumb into view
329+
thumbEls[current].scrollIntoView({ behavior: 'smooth', block: 'nearest', inline: 'center' });
330+
}
331+
332+
// Init
333+
captionEl.textContent = slides[0].dataset.caption || '';
334+
counterEl.textContent = '1 / ' + slides.length;
335+
336+
// Keyboard navigation
337+
document.addEventListener('keydown', e => {
338+
if (e.key === 'ArrowLeft') goTo(current - 1);
339+
if (e.key === 'ArrowRight') goTo(current + 1);
340+
});
341+
342+
// Theme toggle
343+
const toggle = document.querySelector('[data-theme-toggle]');
344+
const root = document.documentElement;
345+
let theme = matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
346+
root.setAttribute('data-theme', theme);
347+
updateToggleIcon();
348+
349+
toggle.addEventListener('click', () => {
350+
theme = theme === 'dark' ? 'light' : 'dark';
351+
root.setAttribute('data-theme', theme);
352+
toggle.setAttribute('aria-label', 'Switch to ' + (theme === 'dark' ? 'light' : 'dark') + ' mode');
353+
updateToggleIcon();
354+
});
355+
356+
function updateToggleIcon() {
357+
toggle.innerHTML = theme === 'dark'
358+
? '<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="5"/><path d="M12 1v2M12 21v2M4.22 4.22l1.42 1.42M18.36 18.36l1.42 1.42M1 12h2M21 12h2M4.22 19.78l1.42-1.42M18.36 5.64l1.42-1.42"/></svg>'
359+
: '<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"/></svg>';
360+
}
361+
})();
362+
</script>
251363
<script id="quarto-html-after-body" type="application/javascript">
252364
window.document.addEventListener("DOMContentLoaded", function (event) {
253365
const icon = "";
471 KB
Loading

0 commit comments

Comments
 (0)