Compare commits

...

9 commits

Author SHA1 Message Date
George Cushen 552df4b957 starters: port docs template
See #3010
2024-02-18 00:48:43 +00:00
George Cushen 06e9c42adc starters: port docs template
See #3010
2024-02-18 00:47:52 +00:00
George Cushen 747d78e86b starters: port docs template
See #3010
2024-02-18 00:39:43 +00:00
George Cushen 69d49c0b4a feat: port docs template
See #3010
2024-02-18 00:35:15 +00:00
George Cushen a7041920bc starters: port docs template
Close #3010
2024-02-17 22:10:53 +00:00
George Cushen 0d0905a765 starters: port docs template
Close #3010
2024-02-17 22:09:59 +00:00
George Cushen 90c9225b9a starters: port docs template
Close #3010
2024-02-17 21:55:51 +00:00
George Cushen 0929442284 starters: port docs template
Close #3010
2024-02-17 21:53:12 +00:00
George Cushen ae7f0c5979 feat: port docs layout
See #3010
2024-02-17 21:29:18 +00:00
78 changed files with 1241 additions and 481 deletions

View file

@ -1,2 +1,3 @@
@import "biography.css";
@import "skills.css";
@import "navbar.css";

View file

@ -31,7 +31,7 @@ input#nav-toggle:checked ~ #nav-menu {
}
#site-header.header {
@apply bg-white dark:bg-slate-900 py-3 shadow;
@apply bg-white dark:bg-zinc-800 py-3 shadow;
}
/* navbar items */

View file

@ -1,5 +1,7 @@
@import "page.css";
@import "task-list.css";
@import "copy.css";
@import "sidebar.css";
@import "sidebar-left.css";
@import "charts.css";
@import "steps.css";
@import "cards.css";

View file

@ -0,0 +1,43 @@
:root {
--hb-cols: 2;
}
.hb-cards {
grid-template-columns: repeat(auto-fill, minmax(max(250px, calc((100% - 1rem * 2) / var(--hb-cols))), 1fr));
}
.hb-card {
@apply flex flex-col justify-start overflow-hidden rounded-lg border border-gray-200 text-current no-underline dark:shadow-none hover:shadow-gray-100 dark:hover:shadow-none shadow-gray-100 active:shadow-sm active:shadow-gray-200 transition-all duration-200;
@apply hover:border-gray-300 bg-transparent shadow-sm dark:border-neutral-700 hover:bg-slate-50 hover:shadow-md dark:hover:border-neutral-600 dark:hover:bg-neutral-800;
}
.hb-card-title {
@apply flex font-semibold items-start gap-2 text-gray-700 hover:text-gray-900 dark:text-neutral-200 dark:hover:text-neutral-50 items-center;
}
.hb-card-subtitle {
@apply line-clamp-3 text-sm font-normal text-gray-500 dark:text-gray-400 px-4 mb-4 mt-2;
}
.hb-card:hover svg {
color: currentcolor;
}
.hb-card svg {
width: 1.5rem;
@apply text-neutral-700;
transition: color 0.3s ease;
}
.hb-card p {
margin-top: 0.5rem;
}
.dark .hb-card svg {
@apply text-neutral-300;
}
.dark .hb-card:hover svg {
color: currentcolor;
}

View file

@ -0,0 +1,70 @@
@media (max-width: 767px) {
.hb-sidebar-container {
@apply fixed top-0 w-full bottom-0 z-[15] pt-[calc(var(--navbar-height))] overscroll-contain;
contain: layout style;
backface-visibility: hidden;
transition: transform 0.8s cubic-bezier(0.52, 0.16, 0.04, 1);
will-change: transform, opacity;
}
}
.hb-sidebar-container {
@apply flex flex-col print:hidden md:top-16 md:shrink-0 md:w-64 md:self-start;
li > div {
@apply h-0;
}
li.open > div {
@apply h-auto pt-1;
}
li.open > a > span > svg > path {
@apply rotate-90;
}
}
.hb-sidebar-list {
@apply relative flex flex-col gap-1 before:absolute before:inset-y-1 before:w-px before:bg-gray-200 before:content-[""] ltr:ml-3 ltr:pl-3 ltr:before:left-0 rtl:mr-3 rtl:pr-3 rtl:before:right-0 dark:before:bg-neutral-700;
}
.hb-scrollbar {
@apply overflow-y-auto overflow-x-hidden p-4 grow;
scrollbar-width: thin;
scrollbar-color: oklch(55.55% 0 0 / 40%) transparent;
scrollbar-gutter: stable;
&::-webkit-scrollbar {
@apply w-3 h-3;
}
&::-webkit-scrollbar-track {
@apply bg-transparent;
}
&::-webkit-scrollbar-thumb {
@apply rounded-[10px];
}
&:hover::-webkit-scrollbar-thumb {
border: 3px solid transparent;
background-color: var(--tw-shadow-color);
background-clip: content-box;
@apply shadow-neutral-500/20 hover:shadow-neutral-500/40;
}
}
.hb-docs-link {
@apply flex rounded px-2 py-1.5 text-sm transition-colors [word-break:break-word] cursor-pointer [-webkit-tap-highlight-color:transparent] [-webkit-touch-callout:none] gap-2 before:opacity-25 before:content-['#'] text-gray-500 hover:bg-gray-100 hover:text-gray-900 dark:text-gray-300 dark:hover:bg-primary-100/5 dark:hover:text-gray-50;
}
.hb-sidebar-mobile-menu {
@apply fixed inset-0 z-10 bg-black/80 dark:bg-black/60 hidden [transition:background-color_1.5s_ease];
}
.hb-sidebar-mobile-toc {
@apply flex flex-col gap-1 relative before:absolute before:inset-y-1 before:w-px before:bg-gray-200 before:content-[""] dark:before:bg-neutral-800 ltr:pl-3 ltr:before:left-0 rtl:pr-3 rtl:before:right-0 ltr:ml-3 rtl:mr-3;
}
.hb-sidebar-custom-link {
@apply flex items-center justify-between gap-2 cursor-pointer rounded px-2 py-1.5 text-sm transition-colors [-webkit-tap-highlight-color:transparent] [-webkit-touch-callout:none] [word-break:break-word];
}

View file

@ -1,46 +0,0 @@
@media (max-width: 767px) {
.hb-sidebar-container {
@apply fixed top-0 w-full bottom-0 z-[15] pt-[calc(var(--navbar-height))] overscroll-contain bg-white dark:bg-slate-700;
contain: layout style;
backface-visibility: hidden;
transition: transform 0.8s cubic-bezier(0.52, 0.16, 0.04, 1);
will-change: transform, opacity;
}
}
.hb-sidebar-container {
li > div {
@apply h-0;
}
li.open > div {
@apply h-auto pt-1;
}
li.open > a > span > svg > path {
@apply rotate-90;
}
}
.hb-scrollbar {
scrollbar-width: thin;
scrollbar-color: oklch(55.55% 0 0 / 40%) transparent;
scrollbar-gutter: stable;
&::-webkit-scrollbar {
@apply w-3 h-3;
}
&::-webkit-scrollbar-track {
@apply bg-transparent;
}
&::-webkit-scrollbar-thumb {
@apply rounded-[10px];
}
&:hover::-webkit-scrollbar-thumb {
border: 3px solid transparent;
background-color: var(--tw-shadow-color);
background-clip: content-box;
@apply shadow-neutral-500/20 hover:shadow-neutral-500/40;
}
}

View file

@ -0,0 +1,16 @@
.hb-steps {
@apply ml-4 mb-12 pl-6 border-l border-gray-200 dark:border-neutral-600 [counter-reset:hb_step];
}
.hb-steps h3 {
counter-increment: hb-step;
&::before {
@apply absolute w-[33px] h-[33px];
@apply rounded-full border-4 border-white dark:border-slate-300;
@apply bg-gray-100 dark:bg-hb-dark;
@apply text-neutral-700 dark:text-neutral-200 text-base font-normal text-center -indent-px;
@apply mt-[3px] ml-[-41px];
content: counter(hb-step);
}
}

View file

@ -71,5 +71,5 @@
*/
.powered-by a {
@apply underline text-blue-600 hover:text-blue-800
@apply underline text-blue-600 hover:text-blue-800 dark:text-blue-300 dark:hover:text-blue-200;
}

View file

@ -3,7 +3,6 @@
/*! Hugo Blox Components | https://hugoblox.com */
@import "main.css";
@import "nav.css";
@import "./components/all.css";
@import "./blox/all.css";
@import "chroma.css";

File diff suppressed because one or more lines are too long

View file

@ -4,6 +4,8 @@ const applyScrollPadding = () => {
const header = document.querySelector('.page-header');
let position = header.getBoundingClientRect();
document.documentElement.style.scrollPaddingTop = position.height.toString() + 'px';
const r = document.querySelector(':root');
r.style.setProperty('--navbar-height', position.height.toString() + 'px');
};
window.addEventListener("DOMContentLoaded", () => {

View file

@ -0,0 +1,66 @@
document.addEventListener("DOMContentLoaded", function () {
const buttons = document.querySelectorAll("[data-hb-sidebar-toggle]");
buttons.forEach(function (button) {
button.addEventListener("click", function (e) {
e.preventDefault();
const parent = button.parentElement.parentElement;
if (parent) {
parent.classList.toggle("open")
}
});
});
});
// Hamburger menu for mobile navigation
document.addEventListener('DOMContentLoaded', function () {
const menu = document.querySelector('#nav-toggle');
const overlay = document.querySelector('.hb-sidebar-mobile-menu');
const sidebarContainer = document.querySelector('.hb-sidebar-container');
if (!overlay){
return;
}
// Initialize the overlay
const overlayClasses = ['fixed', 'z-10', 'inset-0', 'bg-black/80', 'dark:bg-black/60'];
overlay.classList.add('bg-transparent');
overlay.classList.remove("hidden", ...overlayClasses);
function toggleMenu() {
// Toggle the hamburger menu
// See `hb-nav.js` - it handles the default behavior (irrespective of if sidebar is shown).
// When menu is open, show the navigation sidebar
sidebarContainer.classList.toggle('max-md:[transform:translate3d(0,-100%,0)]');
sidebarContainer.classList.toggle('max-md:[transform:translate3d(0,0,0)]');
// When menu is open, prevent body from scrolling
document.body.classList.toggle('overflow-hidden');
document.body.classList.toggle('md:overflow-auto');
}
menu.addEventListener('click', (e) => {
console.debug("Hamburger clicked.");
e.preventDefault();
toggleMenu();
if (overlay.classList.contains('bg-transparent')) {
// Show overlay
overlay.classList.add(...overlayClasses);
overlay.classList.remove('bg-transparent');
} else {
// Hide overlay
overlay.classList.remove(...overlayClasses);
overlay.classList.add('bg-transparent');
}
});
overlay.addEventListener('click', (e) => {
e.preventDefault();
toggleMenu();
// Hide overlay
overlay.classList.remove(...overlayClasses);
overlay.classList.add('bg-transparent');
});
});

View file

@ -5,7 +5,7 @@
<html lang="{{$language_code}}" {{ if in site.Data.i18n.rtl.rtl $language_code }}dir="rtl"{{else}}dir="ltr"{{end}}
data-wc-theme-default="{{ (lower site.Params.appearance.mode) | default "system" }}">
{{ partial "site_head" . }}
<body class="dark:bg-gray-800 dark:text-white-800 page-wrapper" id="top">
<body class="dark:bg-hb-dark dark:text-white page-wrapper" id="top">
<div id="page-bg"></div>
<div class="page-header {{ if site.Params.header.navbar.fixed_to_top }}sticky top-0 z-30{{ end }}">
{{/* Load header block */}}

View file

@ -1,6 +1,6 @@
{{ define "main" }}
<div class="mx-auto flex max-w-screen-xl">
{{ partial "components/sidebar.html" (dict "context" . "disable" true "empty" true) }}
{{ partial "components/sidebar.html" (dict "context" . "no_sidebar" true) }}
{{ partial "components/toc.html" . }}
<article class="w-full break-words flex min-h-[calc(100vh-var(--navbar-height))] min-w-0 justify-center pb-8 pr-[calc(env(safe-area-inset-right)-1.5rem)]">
<main class="w-full min-w-0 max-w-6xl px-6 pt-4 md:px-12">

View file

@ -0,0 +1,3 @@
{{- define "main" -}}
{{ partial "docs_layout.html" . }}
{{- end -}}

View file

@ -0,0 +1,3 @@
{{- define "main" -}}
{{ partial "docs_layout.html" . }}
{{- end -}}

View file

@ -7,7 +7,7 @@
{{ $block := .wcBlock }}
<div class="relative isolate px-6 pt-14 lg:px-8">
<div class="mx-auto max-w-2xl py-32 sm:py-48 lg:py-56">
<div class="mx-auto max-w-2xl {{if not ($block.design.no_padding | default false) }}py-32 sm:py-48 lg:py-56{{end}}">
{{ if $block.content.announcement.text }}
{{ $announcement := $block.content.announcement }}

View file

@ -1,6 +1,6 @@
{{- $last_updated := T "last_updated" -}}
{{- if .Params.show_date_updated | and .Lastmod -}}
{{- if (.Params.show_date_updated | default true) | and .Lastmod -}}
{{ $datetime := (time.Format "2006-01-02T15:04:05.000Z" .Lastmod) }}
<time class="mt-12 mb-8 block text-xs text-gray-500 ltr:text-right rtl:text-left dark:text-gray-400" datetime="{{ $datetime }}">
<span>{{ $last_updated }}</span>

View file

@ -6,14 +6,14 @@
{{ $next = .PrevInSection }}
{{ $prev = .NextInSection }}
{{ end }}
<div class="pt-1 no-prose">
<div class="pt-1 no-prose w-full">
<hr class="border-dotted border-neutral-300 dark:border-neutral-600" />
<div class="flex flex-col md:flex-row flex-nowrap justify-between gap-5 pt-2">
<div class="flex-1 flex-grow">
<div class="">
{{ if $prev }}
<a class="group flex no-underline" href="{{ $prev.RelPermalink }}">
<span
class="me-2 text-neutral-700 transition-transform group-hover:-translate-x-[2px] group-hover:text-primary-600 dark:text-neutral dark:group-hover:text-primary-400"
class="mt-[-0.3rem] me-2 text-neutral-700 transition-transform group-hover:-translate-x-[2px] group-hover:text-primary-600 dark:text-neutral dark:group-hover:text-primary-400"
><span class="ltr:inline rtl:hidden">&larr;</span></span>
<span class="flex flex-col">
<span
@ -28,7 +28,7 @@
</a>
{{ end }}
</div>
<span class="flex-1 flex-grow">
<div class="">
{{ if $next }}
<a class="group flex text-right no-underline" href="{{ $next.RelPermalink }}">
<span class="flex flex-col">
@ -43,11 +43,11 @@
</span>
</span>
<span
class="ms-2 text-neutral-700 transition-transform group-hover:-translate-x-[2px] group-hover:text-primary-600 dark:text-neutral dark:group-hover:text-primary-400"
class="mt-[-0.3rem] ms-2 text-neutral-700 transition-transform group-hover:-translate-x-[2px] group-hover:text-primary-600 dark:text-neutral dark:group-hover:text-primary-400"
><span class="ltr:inline">&rarr;</span></span>
</a>
{{ end }}
</span>
</div>
</div>
</div>
{{ end }}

View file

@ -1,12 +1,145 @@
{{- $is_disabled := .disable | default false -}}
{{- $is_empty := .empty | default false -}}
{{- $context := .context -}}
{{- $sidebar_class := cond $is_disabled (cond $is_empty "md:hidden xl:block" "md:hidden") "md:sticky" -}}
{{- $no_sidebar := .no_sidebar | default true -}}
{{- $pad_sidebar := true -}}
{{- $sidebar_dynamic_class := cond $no_sidebar (cond $pad_sidebar "md:hidden xl:block" "md:hidden") "md:sticky" -}}
<div class="hidden mobile-menu-overlay [transition:background-color_1.5s_ease] fixed inset-0 z-10 bg-black/80 dark:bg-black/60"></div>
{{- $root_section := cond (eq site.Home.Type "docs") site.Home $context.FirstSection -}}
{{- $page_url := $context.RelPermalink -}}
<aside class="hb-sidebar-container flex flex-col print:hidden md:top-16 md:shrink-0 md:w-64 md:self-start max-md:[transform:translate3d(0,-100%,0)] {{ $sidebar_class }}">
<div class="hb-scrollbar overflow-y-auto overflow-x-hidden p-4 grow md:h-[calc(100vh-var(--navbar-height)-var(--menu-height))]">
<div class="max-xl:hidden h-0 w-64 shrink-0"></div>
<div class="hb-sidebar-mobile-menu"></div>
<!-- Explicit `transform` class as we toggle it in JS -->
<aside class="hb-sidebar-container max-md:[transform:translate3d(0,-100%,0)] {{ $sidebar_dynamic_class }}">
<!-- Search bar on small screen -->
<div class="px-4 pt-4 md:hidden">
<!-- Currently, use the navbar search button instead -->
{{/* partial "search.html" */}}
</div>
<div class="hb-scrollbar md:h-[calc(100vh-var(--navbar-height))]">
<ul class="flex flex-col gap-1 md:hidden">
<!-- Navigation links -->
{{ template "menu-links" (dict "context" site.Home "pageURL" $page_url "page" $context "toc" true) -}}
{{ template "custom-menu-links" }}
</ul>
<!-- Sidebar on large screen -->
{{- if $no_sidebar -}}
<div class="max-xl:hidden h-0 w-64 shrink-0"></div>
{{- else -}}
<ul class="flex flex-col gap-1 max-md:hidden">
{{ template "menu-links" (dict "context" $root_section "page" $context "pageURL" $page_url) }}
{{ template "custom-menu-links" }}
</ul>
{{ end -}}
</div>
</aside>
{{- define "menu-links" -}}
{{ template "link-tree" (dict "context" .context "level" 0 "page" .page "pageURL" .pageURL "toc" (.toc | default false)) }}
{{- end -}}
{{- define "link-tree" -}}
{{- if ge .level 4 -}}
{{- return -}}
{{- end -}}
{{- $context := .context -}}
{{- $page := .page }}
{{- $page_url := .page.RelPermalink -}}
{{- $level := .level -}}
{{- $toc := .toc | default false -}}
{{- with $items := union .context.RegularPages .context.Sections -}}
{{- $items = where $items "Params.sidebar.hidden" "!=" true -}}
{{- if eq $level 0 -}}
{{- range $items.ByWeight }}
{{- $active := eq $page_url .RelPermalink -}}
{{- $is_expanded := or (.Params.sidebar.open) (.IsAncestor $page) $active | default false }}
<li class="{{ if $is_expanded }}open{{ end }}">
{{- template "custom-menu-link" dict "context" . "active" $active "title" .LinkTitle "link" .RelPermalink -}}
{{- if and $toc $active -}}
{{- template "mobile-toc" dict "page" . -}}
{{- end -}}
{{- template "link-tree" dict "context" . "page" $page "pageURL" $page_url "level" (add $level 1) "toc" $toc -}}
</li>
{{- end -}}
{{- else -}}
<div class="ltr:pr-0 overflow-hidden">
<ul class="hb-sidebar-list">
{{- range $items.ByWeight }}
{{- $active := eq $page_url .RelPermalink -}}
{{- $is_expanded := or (.Params.sidebar.open) (.IsAncestor $page) $active | default false }}
{{- $title := .LinkTitle | default .File.BaseFileName -}}
<li class="flex flex-col {{ if $is_expanded }}open{{ end }}">
{{- template "custom-menu-link" dict "context" . "active" $active "title" $title "link" .RelPermalink -}}
{{- if and $toc $active -}}
{{ template "mobile-toc" dict "page" . }}
{{- end }}
{{ template "link-tree" dict "context" . "page" $page "pageURL" $page_url "level" (add $level 1) "toc" $toc }}
</li>
{{- end -}}
</ul>
</div>
{{- end -}}
{{- end }}
{{- end -}}
{{- define "mobile-toc" -}}
{{ $page := .page }}
{{ with $page.Fragments.Headings }}
<ul class="hb-sidebar-mobile-toc">
{{- range . }}
{{- with .Headings }}
{{- range . -}}
<li>
<a
href="#{{ anchorize .ID }}"
class="hb-docs-link"
>
{{- .Title -}}
</a>
</li>
{{ end -}}
{{ end -}}
{{ end -}}
</ul>
{{ end }}
{{- end -}}
{{- define "custom-menu-links" -}}
{{- range site.Menus.sidebar -}}
{{- $name := .Name -}}
{{ if eq .Params.type "separator" }}
<li class="[word-break:break-word] mt-5 mb-2 px-2 py-1.5 text-sm font-semibold text-gray-900 first:mt-0 dark:text-gray-100 cursor-default">
<span>{{ $name }}</span>
</li>
{{ else }}
<li>{{ template "custom-menu-link" dict "active" false "title" $name "link" (.URL | relLangURL) }}</li>
{{ end }}
{{- end -}}
{{- end -}}
{{- define "custom-menu-link" -}}
{{- $is_external := strings.HasPrefix .link "http" -}}
{{- $open := .open | default false -}}
<a
class="hb-sidebar-custom-link
{{- if .active }}
sidebar-active-item bg-primary-100 font-semibold text-primary-800 dark:bg-primary-300 dark:text-primary-900
{{- else }}
text-gray-500 hover:bg-gray-100 hover:text-gray-900 dark:text-gray-300 dark:hover:bg-primary-800 dark:hover:text-gray-50
{{- end -}}"
href="{{ .link }}"
{{ if $is_external }}target="_blank" rel="noreferer"{{ end }}
>
{{- .title -}}
{{- with .context }}
{{- if or .RegularPages .Sections }}
<span data-hb-sidebar-toggle>
<svg fill="none" viewBox="0 0 24 24" stroke="currentColor" class="h-[18px] min-w-[18px] rounded-sm p-0.5 hover:bg-gray-800/5 dark:hover:bg-gray-100/5"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7" class="origin-center transition-transform rtl:-rotate-180"></path></svg>
</span>
{{- end }}
{{ end -}}
</a>
{{- end -}}

View file

@ -0,0 +1,21 @@
<div class="mx-auto flex max-w-screen-xl">
{{ partial "components/sidebar.html" (dict "context" . "no_sidebar" false) }}
{{ partial "components/toc.html" . }}
<article class="flex w-full min-w-0 min-h-[calc(100vh-var(--navbar-height))] justify-center break-words pb-8 pr-[calc(env(safe-area-inset-right)-1.5rem)]">
<main class="prose prose-slate lg:prose-xl dark:prose-invert w-full min-w-0 max-w-6xl px-6 pt-4 md:px-12">
<div class="mb-1">
{{ partial "components/breadcrumb.html" . }}
</div>
<div class="content text-base">
<h1>{{ .Title }}</h1>
{{ .Content }}
</div>
{{ partial "components/last-edited.html" . }}
{{ .Scratch.Set "invert_pager" true }}
{{ partial "components/next-in-series.html" . }}
{{ partial "comments.html" . }}
</main>
</article>
</div>

View file

@ -253,7 +253,8 @@
{{- $js_theme := resources.Get "js/hb-theme.js" | resources.Minify -}}
{{- $js_lang := resources.Get "js/hb-i18n.js" | resources.Minify -}}
{{- $js_nav := resources.Get "js/hb-nav.js" | resources.Minify -}}
{{ $js_bundle := slice $js_bundle_head $js_academic $js_theme $js_lang $js_nav | resources.Concat (printf "js/hugo-blox-%s.min.js" .Lang) }}
{{- $js_sidebar := resources.Get "js/hb-sidebar.js" | resources.Minify -}}
{{ $js_bundle := slice $js_bundle_head $js_academic $js_theme $js_lang $js_nav $js_sidebar | resources.Concat (printf "js/hugo-blox-%s.min.js" .Lang) }}
{{- if hugo.IsProduction -}}
{{ $js_bundle = $js_bundle | fingerprint "sha256" }}
{{- end -}}

View file

@ -1,9 +1,16 @@
{{ $item := .item }}
{{ $link := $item.RelPermalink }}
{{ $target := "" }}
{{ if $item.Params.external_link }}
{{ $link = $item.Params.external_link }}
{{ $target = "target=\"_blank\" rel=\"noopener\"" }}
{{ end }}
{{ $resource := partial "functions/get_featured_image.html" $item }}
{{ $anchor := $item.Params.image.focal_point | default "Center" }}
<a href="{{ $item.RelPermalink }}" class="mb-5">
<a href="{{ $link }}" {{ $target | safeHTMLAttr }} class="mb-5">
<div class="md:flex">
<div class="md:flex-shrink-0 overflow-hidden">
{{ with $resource }}

View file

@ -1 +1 @@
<div class="container max-w-[65ch] mx-auto bg-white dark:bg-slate-900 rounded-xl shadow-md overflow-hidden my-5"><!--max-w-md md:max-w-2xl-->
<div class="container max-w-[65ch] mx-auto bg-white dark:bg-zinc-900 rounded-xl border-gray-100 dark:border-gray-700 border shadow-md overflow-hidden my-5"><!--max-w-md md:max-w-2xl-->

View file

@ -0,0 +1,35 @@
{{/*
Docs: https://docs.hugoblox.com/content/writing-markdown-latex/
*/}}
{{- $url := .Get "url" -}}
{{- $is_external := strings.HasPrefix $url "http" -}}
{{- $url = cond (strings.HasPrefix $url "/") ($url | relURL) $url -}}
{{- $icon := .Get "icon" -}}
{{- $title := .Get "title" -}}
{{- $subtitle := .Get "subtitle" -}}
<a
class="hb-card group"
{{- if $url -}}
href="{{ $url }}" {{ with $is_external }}target="_blank" rel="noreferrer"{{ end -}}
{{- end -}}
>
{{/* Adjust padding depending on content */}}
{{- $padding := "p-4" -}}
{{- with $subtitle -}}
{{- $padding = "pt-4 px-4" -}}
{{- end -}}
<span class="hb-card-title {{ $padding }}">
{{- with $icon }}
{{ partial "functions/get_icon" (dict "name" $icon "attributes" "style=\"height: 1em; width: 1em;\"") -}}
{{- end -}}
{{- $title -}}
</span>
{{- with $subtitle -}}
<div class="hb-card-subtitle">{{- $subtitle | markdownify -}}</div>
{{- end -}}
</a>

View file

@ -0,0 +1,9 @@
{{/*
Docs: https://docs.hugoblox.com/content/writing-markdown-latex/
*/}}
{{ $col_count := .Get "cols" | default "1" }}
<div class="hb-cards mt-4 grid gap-4 not-prose" style="--hb-cols: {{ $col_count }};">
{{ .Inner }}
</div>

View file

@ -11,9 +11,12 @@
Additional style for <details> tag.
*/}}
{{- $title := .Get "text" | default "" -}}
{{- $id := printf "spoiler-%d" .Ordinal -}}
<details class="spoiler {{ .Get "class" }}" {{ with .Get "style" }}style="{{ . | safeCSS }}"{{ end }} id="{{$id}}">
<summary>{{ .Get "text" | markdownify | emojify }}</summary>
<p>{{ .Inner | markdownify | emojify }}</p>
<summary class="cursor-pointer">{{ $title }}</summary>
<div class="rounded-lg bg-neutral-50 dark:bg-neutral-800 p-2">
{{ .InnerDeindent | markdownify }}
</div>
</details>

View file

@ -0,0 +1,3 @@
<div class="hb-steps">
{{- .Inner -}}
</div>

View file

@ -30,6 +30,7 @@ module.exports = {
theme: {
extend: {
colors: {
'hb-dark': 'rgb(23, 24, 28)',
neutral: {
DEFAULT: "rgb(var(--color-neutral) / <alpha-value>)",
50: "rgb(var(--color-neutral-50) / <alpha-value>)",
@ -71,6 +72,18 @@ module.exports = {
fontFamily: {
'sans': ['"Inter var"', ...defaultTheme.fontFamily.sans],
},
fontSize: {
xs: '.75rem',
sm: '.875rem',
base: '1rem',
lg: '1.125rem',
xl: '1.25rem',
// '2xl': '1.5rem',
// '3xl': '1.875rem',
// '4xl': '2.25rem',
// '5xl': '3rem',
// '6xl': '4rem'
},
typography: ({ theme }) => ({
DEFAULT: {
css: {

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

View file

@ -1,7 +1,7 @@
name: Deploy website to GitHub Pages
env:
WC_HUGO_VERSION: '0.119.0'
WC_HUGO_VERSION: '0.122.0'
on:
# Trigger the workflow every time you push to the `main` branch
@ -51,6 +51,8 @@ jobs:
run: |
echo "Hugo Cache Dir: $(hugo config | grep cachedir)"
hugo --minify --baseURL "${{ steps.pages.outputs.base_url }}/"
- name: Generate Pagefind search index
run: npx pagefind --source "public"
- name: Upload artifact
uses: actions/upload-pages-artifact@v2
with:

View file

@ -1,30 +1,32 @@
# [Hugo Documentation Theme](https://github.com/HugoBlox/theme-documentation)
# [Hugo Docs Theme](https://github.com/HugoBlox/theme-documentation)
[![Screenshot](./preview.png)](https://hugoblox.com/templates/)
[![Screenshot](./.github/preview.png)](https://hugoblox.com/templates/details/docs/)
The **Documentation** starter template empowers you to easily create **product documentation**, **digital books**, **personal notes**, and **knowledge bases**.
The Hugo **Documentation Template** empowers with everything you need to build a beautiful documentation website, including a customizable block-based homepage and blog. It's ultra-fast and easy, letting you focus on your content. It's also no-code by default, so no JavaScript knowledge is required unlike other templates!
[![Get Started](https://img.shields.io/badge/-Get%20started-ff4655?style=for-the-badge)](https://hugoblox.com/hugo-themes/)
**Trusted by 250,000+ creators, teams, and organizations.** Highly customizable via the integrated **no-code, block-based website builder**, making every site truly personalized ⭐⭐⭐⭐⭐
[![Get Started](https://img.shields.io/badge/-Get%20started-ff4655?style=for-the-badge)](https://hugoblox.com/templates/details/docs/)
[![Discord](https://img.shields.io/discord/722225264733716590?style=for-the-badge)](https://discord.com/channels/722225264733716590/742892432458252370/742895548159492138)
[![Twitter Follow](https://img.shields.io/twitter/follow/GetResearchDev?label=Follow%20on%20Twitter)](https://twitter.com/wowchemy)
[![Twitter Follow](https://img.shields.io/twitter/follow/GetResearchDev?label=Follow%20on%20Twitter)](https://twitter.com/GetResearchDev)
[Check out the latest demo](https://docs.hugoblox.com/) of what you'll get in less than 10 minutes, or [get inspired by how others are using this template](https://hugoblox.com/creators/).
[Check out the latest demo](https://hugo-docs-theme.netlify.app/) of what you'll get in less than 10 minutes, or [view the showcase](https://hugoblox.com/creators/).
The integrated [**Wowchemy**](https://hugoblox.com) website builder and CMS makes it easy to create a beautiful website for free. Edit your site in the CMS (or your favorite editor), generate it with [Hugo](https://github.com/gohugoio/hugo), and deploy with GitHub or Netlify. Customize anything on your site with widgets, light/dark themes, and language packs.
The integrated [**Hugo Blox**](https://hugoblox.com) website builder and CMS makes it easy to create a beautiful website for free. Edit your site in the CMS (or your favorite editor), generate it with [Hugo](https://github.com/gohugoio/hugo), and deploy with GitHub or Netlify. Customize anything on your site with widgets, light/dark themes, and language packs.
- 👉 [**Get Started**](https://hugoblox.com/hugo-themes/)
- 👉 [**Get Started**](https://hugoblox.com/templates/details/docs/)
- 📚 [View the **documentation**](https://docs.hugoblox.com/)
- 💬 [Chat with the **Wowchemy research community**](https://discord.gg/z8wNYzb) or [**Hugo community**](https://discourse.gohugo.io)
- ⬇️ **Automatically import citations from BibTeX** with the [Hugo Academic CLI](https://github.com/GetRD/academic-file-converter)
- 🐦 Share your new site with the community: [@wowchemy](https://twitter.com/wowchemy) [@GeorgeCushen](https://twitter.com/GeorgeCushen) [#MadeWithWowchemy](https://twitter.com/search?q=%23MadeWithWowchemy&src=typed_query)
- 💬 [Chat with the **Hugo Blox Builder community**](https://discord.gg/z8wNYzb) or [**Hugo community**](https://discourse.gohugo.io)
- ⬇️ **Automatically import citations from BibTeX** with the [Academic File Converter](https://github.com/GetRD/academic-file-converter)
- 🐦 Share your new site with the community: [@GetResearchDev](https://twitter.com/GetResearchDev) [@GeorgeCushen](https://twitter.com/GeorgeCushen) [#MadeWithHugoBlox](https://twitter.com/search?q=%23MadeWithHugoBlox&src=typed_query)
- 🗳 [Take the survey and help us improve #OpenSource](https://forms.gle/NioD9VhUg7PNmdCAA)
- 🚀 [Contribute improvements](https://github.com/HugoBlox/hugo-blox-builder/blob/main/CONTRIBUTING.md) or [suggest improvements](https://github.com/HugoBlox/hugo-blox-builder/issues)
- ⬆️ **Updating?** View the [Update Guide](https://docs.hugoblox.com/hugo-tutorials/update/) and [Release Notes](https://github.com/HugoBlox/hugo-blox-builder/releases)
- ⬆️ **Updating?** View the [Update Guide](https://docs.hugoblox.com/reference/update/) and [Release Notes](https://github.com/HugoBlox/hugo-blox-builder/releases)
## We ask you, humbly, to support this open source movement
Today we ask you to defend the open source independence of the Wowchemy website builder and themes 🐧
Today we ask you to defend the open source independence of the Hugo Blox Builder and themes 🐧
We're an open source movement that depends on your support to stay online and thriving, but 99.9% of our creators don't give; they simply look the other way.
### [❤️ Click here to become a GitHub Sponsor, unlocking awesome perks such as _exclusive academic templates and widgets_](https://github.com/sponsors/gcushen)
### [❤️ Click here to become a Sponsor, unlocking awesome perks such as _exclusive_ templates and blox_](https://hugoblox.com/sponsor/)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 3 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 43 KiB

View file

@ -3,7 +3,7 @@
# Hugo Documentation: https://gohugo.io/getting-started/configuration/#all-configuration-settings
# This file is formatted using YAML syntax - learn more at https://learnxinyminutes.com/docs/yaml/
title: 'My Project' # Website name
title: "Hugo Docs" # Website name
baseURL: 'https://example.com/' # Website URL
############################
@ -16,6 +16,35 @@ cascade:
path: /docs/**
editable: true
show_breadcrumb: true
# Hide date from Next In Series
show_date: false
# Show date modified at end of content
show_date_updated: true
# Blog post options
- _target:
path: /post/**
kind: page
pager: true
editable: true
hide_date: false
show_date_updated: true
reading_time: true
commentable: true
show_related: true
share: true
# Just use Breadcrumb for navigation on blog post pages?
show_breadcrumb: false
header:
navbar:
enable: true
# Blog section options
- _target:
path: /post/*
kind: section
# Change url to /blog/
url: /blog/
# Set the listing view
view: date-title-summary
############################
## LANGUAGE
@ -30,6 +59,8 @@ removePathAccents: true
## ADVANCED
############################
build:
writeStats: true
enableGitInfo: false
summaryLength: 30
paginate: 10
@ -37,17 +68,19 @@ enableEmoji: true
enableRobotsTXT: true
footnotereturnlinkcontents: <sup>^</sup>
ignoreFiles: [\.ipynb$, .ipynb_checkpoints$, \.Rmd$, \.Rmarkdown$, _cache$]
enableInlineShortcodes: true
permalinks:
authors: '/author/:slug/'
tags: '/tag/:slug/'
categories: '/category/:slug/'
disableAliases: true
outputs:
home: [HTML, RSS, JSON, WebAppManifest, headers, redirects]
home: [HTML, RSS, WebAppManifest, headers, redirects]
page: [HTML]
section: [HTML, RSS]
imaging:
resampleFilter: lanczos
quality: 75
quality: 85
anchor: smart
timeout: 600000
taxonomies:

View file

@ -1,6 +1,4 @@
# Navigation Links
# To link a homepage widget, specify the URL as a hash `#` followed by the filename of the
# desired widget in your `content/home/` folder.
# The weight parameter defines the order that the links will appear in.
main:
@ -10,3 +8,27 @@ main:
- name: Documentation
url: docs/
weight: 20
- name: Blog
url: blog/
weight: 30
- name: Showcase
url: showcase/
weight: 40
- name: Community
url: community/
weight: 50
sidebar:
- identifier: more
name: Still need help?
params:
type: separator
weight: 1
- identifier: community
name: "Community"
pageRef: "/community"
weight: 2
- identifier: hugoDocs
name: "Hugo Docs ↗"
url: "https://docs.hugoblox.com"
weight: 3

View file

@ -6,4 +6,4 @@
imports:
- path: github.com/HugoBlox/hugo-blox-builder/modules/blox-plugin-netlify
- path: github.com/HugoBlox/hugo-blox-builder/modules/blox-bootstrap/v5
- path: github.com/HugoBlox/hugo-blox-builder/modules/blox-tailwind

View file

@ -4,46 +4,52 @@
# This file is formatted using YAML syntax - learn more at https://learnxinyminutes.com/docs/yaml/
# Appearance
appearance:
theme_day: minimal
theme_night: minimal
font: minimal
font_size: L
mode: light
color: blue
# SEO
marketing:
seo:
site_type: Project
local_business_type: ''
org_name: ''
description: 'A highly-customizable Hugo documentation theme powered by Hugo Blox Builder.'
description: 'A highly-customizable Hugo documentation theme powered by Hugo Blox website builder.'
twitter: 'GetResearchDev'
analytics:
google_analytics: ''
baidu_tongji: ''
google_tag_manager: ''
microsoft_clarity: ''
baidu_tongji: ''
plausible: ''
fathom: ''
pirsch: ''
verification:
google: ''
baidu: ''
# Site header
header:
navbar:
enable: true
align: l
show_logo: true
show_language: false
show_day_night: true
blox: "navbar"
align: "center"
fixed_to_top: true
logo:
text: ""
# Logo filename in `assets/media/` folder
filename: "logo.svg"
button:
enable: true
text: "Get Started"
url: "https://hugoblox.com/templates/details/docs/"
show_search: true
highlight_active_link: true
show_theme_chooser: true
# Site footer
footer:
copyright:
notice: '© {year} Me. This work is licensed under {license}'
notice: '© {year} My Company. This work is licensed under {license}'
license:
enable: true
allow_derivatives: false
@ -51,45 +57,28 @@ footer:
allow_commercial: false
# Localization
locale:
date_format: 'Jan 2, 2006'
time_format: '3:04 PM'
# Site features
features:
syntax_highlighter:
theme_light: github-light
theme_dark: dracula
math:
enable: false
privacy_pack:
enable: false
repository:
url: 'https://github.com/wowchemy/hugo-documentation-theme'
content_dir: content
branch: main
url: 'https://github.com/HugoBlox/hugo-blox-builder/'
content_dir: 'starters/documentation/content'
branch: 'main'
feedback:
responses:
positive: 'Glad to hear it! [Any ideas for improvements?](https://github.com/<USERNAME>/<REPO>/issues/new).'
negative: 'Sorry to hear that. [Please tell us how we can improve](https://github.com/<USERNAME>/<REPO>/issues/new).'
comment:
provider: ''
disqus:
shortname: ''
show_count: true
commento:
url: ''
giscus:
repo: ''
repo_id: ''
category: ''
category_id: ''
search:
provider: wowchemy
algolia:
app_id: ''
api_key: ''
index_name: ''
show_logo: false

View file

@ -0,0 +1,97 @@
---
title: 'Home'
date: 2023-10-24
type: landing
design:
# Default section spacing
spacing: "6rem"
sections:
- block: hero
content:
title: Write Docs Fast, Focus on Your Content
text: The easy, no-code technical documentation solution your users will love 🎉
primary_action:
text: Get Started
url: https://hugoblox.com/templates/details/docs/
icon: rocket-launch
secondary_action:
text: Read the docs
url: /docs/
announcement:
text: "Announcing the release of version 2."
link:
text: "Read more"
url: "/blog/"
design:
spacing:
padding: [0, 0, 0, 0]
margin: [0, 0, 0, 0]
# For full-screen, add `min-h-screen` below
css_class: ""
background:
color: ""
image:
# Add your image background to `assets/media/`.
filename: ""
filters:
brightness: 0.5
- block: stats
content:
items:
- statistic: "1M+"
description: |
Websites built
with Hugo Blox
- statistic: "10k+"
description: |
GitHub stars
since 2016
- statistic: "3k+"
description: |
Discord community
for support
design:
# Section background color (CSS class)
css_class: "bg-gray-100 dark:bg-gray-800"
# Reduce spacing
spacing:
padding: ["1rem", 0, "1rem", 0]
- block: features
id: features
content:
title: Features
text: Collaborate, publish, and maintain technical knowledge with an all-in-one documentation site. Used by 100,000+ startups, enterprises, and researchers.
items:
- name: Optimized SEO
icon: magnifying-glass
description: Automatic sitemaps, RSS feeds, and rich metadata take the pain out of SEO and syndication.
- name: Fast
icon: bolt
description: Super fast page load with Tailwind CSS and super fast site building with Hugo.
- name: Easy
icon: sparkles
description: One-click deployment to GitHub Pages. Have your new website live within 5 minutes!
- name: No-Code
icon: code-bracket
description: Edit and design your site just using rich text (Markdown) and configurable YAML parameters.
- name: Highly Rated
icon: star
description: Rated 5-stars by the community.
- name: Swappable Blocks
icon: rectangle-group
description: Build your pages with blocks - no coding required!
- block: cta-card
content:
title: "Start Writing with the #1 Effortless Documentation Platform"
text: Hugo Blox Docs Theme brings all your technical knowledge together in a single, centralized knowledge base. Easily search and edit it with the tools you use every day!
button:
text: Get Started
url: https://hugoblox.com/templates/details/docs/
design:
card:
# Card background color (CSS class)
css_class: "bg-primary-700"
css_style: ""
---

View file

@ -0,0 +1,9 @@
---
# To publish author profile pages, remove all the `_build` and `cascade` settings below.
_build:
render: never
cascade:
_build:
render: never
list: always
---

View file

@ -0,0 +1,59 @@
---
# Display name
title: 吳健雄
# Name pronunciation (optional)
name_pronunciation: Chien Shiung Wu
# Full name (for SEO)
first_name: Shiung Wu
last_name: Chien
# Status emoji
status:
icon: ☕️
# Is this the primary user of the site?
superuser: true
# Role/position/tagline
role: Professor of Artificial Intelligence
# Organizations/Affiliations to show in About widget
organizations:
- name: Stanford University
url: https://www.stanford.edu/
# Short bio (displayed in user profile at end of posts)
bio: My research interests include distributed robotics, mobile computing and programmable matter.
# Social Networking
# Need to use another icon? Simply download the SVG icon to your `assets/media/icons/` folder.
profiles:
- icon: at-symbol
url: 'mailto:your-email@example.com'
label: E-mail Me
- icon: brands/x
url: https://twitter.com/GetResearchDev
- icon: brands/instagram
url: https://www.instagram.com/
- icon: brands/linkedin
url: https://www.linkedin.com/
# Link to a PDF of your resume/CV - upload it to `static/uploads/resume.pdf`
- icon: academicons/cv
url: uploads/resume.pdf
label: Download my resume
- icon: rss
url: ./post/index.xml
label: Subscribe to my blog via RSS feed
# Highlight the author in author lists? (true/false)
highlight_name: true
# Author's website URL
website: ""
---
Chien Shiung Wu is a professor of artificial intelligence at the Stanford AI Lab. Her research interests include
distributed robotics, mobile computing and programmable matter. She leads the Robotic Neurobiology group, which develops
self-reconfiguring robots, systems of self-organizing robots, and mobile sensor networks.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

View file

@ -0,0 +1,36 @@
---
title: Community
toc: true
reading_time: false
pager: false
---
## Support
Get support fast. Hugo Blox has the largest Hugo community on Discord, consisting of thousands of creators, developers, and startups.
## Docs
- View the [Hugo Blox Documentation](https://docs.hugoblox.com/)
## Live Chat {#chat}
- Join the [Hugo Blox Online Chat](https://discord.gg/z8wNYzb)
- _#using-hugo-blox_ for user help
- _#contributors_ for contributing help
## Feature requests {#feature-requests}
For new feature requests, create a post on our [GitHub Issues](https://github.com/HugoBlox/hugo-blox-builder/issues). You can also upvote existing feature requests with a 👍
## News {#news}
Follow us so you are the first to know when new features and templates are launched:
- [Subscribe to the _#announcement_ channel on Discord](https://discord.gg/z8wNYzb)
- [Follow us on Twitter](https://twitter.com/GetResearchDev)
- [Subscribe to the Hugo Blox blog](https://hugoblox.com/blog/)
## Further Resources
- [Hugo Forums](https://discourse.gohugo.io/) for help installing Hugo and resolving Hugo error messages

View file

@ -1,9 +1,16 @@
---
title: Docs
type: book # Do not modify.
toc: false
linkTitle: Documentation
title: Introduction
---
Welcome to the _Project Docs_ template!
👋 Welcome to the demo of the Hugo Blox Documentation template!
{{< cta cta_text="👉 Get Started with Chapter 1" cta_link="chapter1" >}}
<!--more-->
This site is a demo of the Hugo Blox Documentation theme. For the full documentation on how to use this template, refer to the [Hugo Blox Documentation](https://docs.hugoblox.com/).
## Next
{{< cards >}}
{{< card url="getting-started" title="Get Started" icon="document-text" subtitle="Create your docs in just 5 minutes!" >}}
{{< /cards >}}

View file

@ -1,56 +0,0 @@
---
# Title, summary, and page position.
linktitle: Chapter 1
summary: Learn how to use Wowchemy's docs layout for publishing online courses, software documentation, and tutorials.
weight: 1
icon: book
icon_pack: fas
# Page metadata.
title: Chapter 1
date: '2018-09-09T00:00:00Z'
type: book # Do not modify.
---
## Flexibility
Document everything!
This feature can be used for publishing content such as:
- **Online courses**
- **Project or software documentation**
- **Tutorials**
- **Notes**
The `courses` folder may be renamed. For example, we can rename it to `docs` for software/project documentation or `tutorials` for creating an online course.
## Delete courses
**To remove these pages, delete the `courses` folder and see below to delete the associated menu link.**
## Update site menu
After renaming or deleting the `courses` folder, you may wish to update any `[[main]]` menu links to it by editing your menu configuration at `config/_default/menus.toml`.
For example, if you delete this folder, you can remove the following from your menu configuration:
```toml
[[main]]
name = "Courses"
url = "courses/"
weight = 50
```
Or, if you are creating a software documentation site, you can rename the `courses` folder to `docs` and update the associated _Courses_ menu configuration to:
```toml
[[main]]
name = "Docs"
url = "docs/"
weight = 50
```
## Update the docs menu
If you use the _docs_ layout, note that the name of the menu in the front matter should be in the form `[menu.X]` where `X` is the folder name. Hence, if you rename the `courses/example/` folder, you should also rename the menu definitions in the front matter of files within `courses/example/` from `[menu.example]` to `[menu.<NewFolderName>]`.

View file

@ -1,34 +0,0 @@
---
title: Reading List
linktitle: Reading List
type: book
date: '2019-05-05T00:00:00+01:00'
# Prev/next pager order (if `docs_section_pager` enabled in `params.toml`)
weight: 2
---
A recommended reading list for the course.
## Books
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis posuere tellus ac convallis placerat. Proin tincidunt magna sed ex sollicitudin condimentum. Sed ac faucibus dolor, scelerisque sollicitudin nisi. Cras purus urna, suscipit quis sapien eu, pulvinar tempor diam. Quisque risus orci, mollis id ante sit amet, gravida egestas nisl. Sed ac tempus magna. Proin in dui enim. Donec condimentum, sem id dapibus fringilla, tellus enim condimentum arcu, nec volutpat est felis vel metus. Vestibulum sit amet erat at nulla eleifend gravida.
Nullam vel molestie justo. Curabitur vitae efficitur leo. In hac habitasse platea dictumst. Sed pulvinar mauris dui, eget varius purus congue ac. Nulla euismod, lorem vel elementum dapibus, nunc justo porta mi, sed tempus est est vel tellus. Nam et enim eleifend, laoreet sem sit amet, elementum sem. Morbi ut leo congue, maximus velit ut, finibus arcu. In et libero cursus, rutrum risus non, molestie leo. Nullam congue quam et volutpat malesuada. Sed risus tortor, pulvinar et dictum nec, sodales non mi. Phasellus lacinia commodo laoreet. Nam mollis, erat in feugiat consectetur, purus eros egestas tellus, in auctor urna odio at nibh. Mauris imperdiet nisi ac magna convallis, at rhoncus ligula cursus.
Cras aliquam rhoncus ipsum, in hendrerit nunc mattis vitae. Duis vitae efficitur metus, ac tempus leo. Cras nec fringilla lacus. Quisque sit amet risus at ipsum pharetra commodo. Sed aliquam mauris at consequat eleifend. Praesent porta, augue sed viverra bibendum, neque ante euismod ante, in vehicula justo lorem ac eros. Suspendisse augue libero, venenatis eget tincidunt ut, malesuada at lorem. Donec vitae bibendum arcu. Aenean maximus nulla non pretium iaculis. Quisque imperdiet, nulla in pulvinar aliquet, velit quam ultrices quam, sit amet fringilla leo sem vel nunc. Mauris in lacinia lacus.
Suspendisse a tincidunt lacus. Curabitur at urna sagittis, dictum ante sit amet, euismod magna. Sed rutrum massa id tortor commodo, vitae elementum turpis tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean purus turpis, venenatis a ullamcorper nec, tincidunt et massa. Integer posuere quam rutrum arcu vehicula imperdiet. Mauris ullamcorper quam vitae purus congue, quis euismod magna eleifend. Vestibulum semper vel augue eget tincidunt. Fusce eget justo sodales, dapibus odio eu, ultrices lorem. Duis condimentum lorem id eros commodo, in facilisis mauris scelerisque. Morbi sed auctor leo. Nullam volutpat a lacus quis pharetra. Nulla congue rutrum magna a ornare.
Aliquam in turpis accumsan, malesuada nibh ut, hendrerit justo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Quisque sed erat nec justo posuere suscipit. Donec ut efficitur arcu, in malesuada neque. Nunc dignissim nisl massa, id vulputate nunc pretium nec. Quisque eget urna in risus suscipit ultricies. Pellentesque odio odio, tincidunt in eleifend sed, posuere a diam. Nam gravida nisl convallis semper elementum. Morbi vitae felis faucibus, vulputate orci placerat, aliquet nisi. Aliquam erat volutpat. Maecenas sagittis pulvinar purus, sed porta quam laoreet at.
## Videos
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis posuere tellus ac convallis placerat. Proin tincidunt magna sed ex sollicitudin condimentum. Sed ac faucibus dolor, scelerisque sollicitudin nisi. Cras purus urna, suscipit quis sapien eu, pulvinar tempor diam. Quisque risus orci, mollis id ante sit amet, gravida egestas nisl. Sed ac tempus magna. Proin in dui enim. Donec condimentum, sem id dapibus fringilla, tellus enim condimentum arcu, nec volutpat est felis vel metus. Vestibulum sit amet erat at nulla eleifend gravida.
Nullam vel molestie justo. Curabitur vitae efficitur leo. In hac habitasse platea dictumst. Sed pulvinar mauris dui, eget varius purus congue ac. Nulla euismod, lorem vel elementum dapibus, nunc justo porta mi, sed tempus est est vel tellus. Nam et enim eleifend, laoreet sem sit amet, elementum sem. Morbi ut leo congue, maximus velit ut, finibus arcu. In et libero cursus, rutrum risus non, molestie leo. Nullam congue quam et volutpat malesuada. Sed risus tortor, pulvinar et dictum nec, sodales non mi. Phasellus lacinia commodo laoreet. Nam mollis, erat in feugiat consectetur, purus eros egestas tellus, in auctor urna odio at nibh. Mauris imperdiet nisi ac magna convallis, at rhoncus ligula cursus.
Cras aliquam rhoncus ipsum, in hendrerit nunc mattis vitae. Duis vitae efficitur metus, ac tempus leo. Cras nec fringilla lacus. Quisque sit amet risus at ipsum pharetra commodo. Sed aliquam mauris at consequat eleifend. Praesent porta, augue sed viverra bibendum, neque ante euismod ante, in vehicula justo lorem ac eros. Suspendisse augue libero, venenatis eget tincidunt ut, malesuada at lorem. Donec vitae bibendum arcu. Aenean maximus nulla non pretium iaculis. Quisque imperdiet, nulla in pulvinar aliquet, velit quam ultrices quam, sit amet fringilla leo sem vel nunc. Mauris in lacinia lacus.
Suspendisse a tincidunt lacus. Curabitur at urna sagittis, dictum ante sit amet, euismod magna. Sed rutrum massa id tortor commodo, vitae elementum turpis tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean purus turpis, venenatis a ullamcorper nec, tincidunt et massa. Integer posuere quam rutrum arcu vehicula imperdiet. Mauris ullamcorper quam vitae purus congue, quis euismod magna eleifend. Vestibulum semper vel augue eget tincidunt. Fusce eget justo sodales, dapibus odio eu, ultrices lorem. Duis condimentum lorem id eros commodo, in facilisis mauris scelerisque. Morbi sed auctor leo. Nullam volutpat a lacus quis pharetra. Nulla congue rutrum magna a ornare.
Aliquam in turpis accumsan, malesuada nibh ut, hendrerit justo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Quisque sed erat nec justo posuere suscipit. Donec ut efficitur arcu, in malesuada neque. Nunc dignissim nisl massa, id vulputate nunc pretium nec. Quisque eget urna in risus suscipit ultricies. Pellentesque odio odio, tincidunt in eleifend sed, posuere a diam. Nam gravida nisl convallis semper elementum. Morbi vitae felis faucibus, vulputate orci placerat, aliquet nisi. Aliquam erat volutpat. Maecenas sagittis pulvinar purus, sed porta quam laoreet at.

View file

@ -1,33 +0,0 @@
---
title: Syllabus
linktitle: Syllabus
type: book
date: '2019-05-05T00:00:00+01:00'
# Prev/next pager order (if `docs_section_pager` enabled in `params.toml`)
weight: 1
---
## Goals
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis posuere tellus ac convallis placerat. Proin tincidunt magna sed ex sollicitudin condimentum. Sed ac faucibus dolor, scelerisque sollicitudin nisi. Cras purus urna, suscipit quis sapien eu, pulvinar tempor diam. Quisque risus orci, mollis id ante sit amet, gravida egestas nisl. Sed ac tempus magna. Proin in dui enim. Donec condimentum, sem id dapibus fringilla, tellus enim condimentum arcu, nec volutpat est felis vel metus. Vestibulum sit amet erat at nulla eleifend gravida.
Nullam vel molestie justo. Curabitur vitae efficitur leo. In hac habitasse platea dictumst. Sed pulvinar mauris dui, eget varius purus congue ac. Nulla euismod, lorem vel elementum dapibus, nunc justo porta mi, sed tempus est est vel tellus. Nam et enim eleifend, laoreet sem sit amet, elementum sem. Morbi ut leo congue, maximus velit ut, finibus arcu. In et libero cursus, rutrum risus non, molestie leo. Nullam congue quam et volutpat malesuada. Sed risus tortor, pulvinar et dictum nec, sodales non mi. Phasellus lacinia commodo laoreet. Nam mollis, erat in feugiat consectetur, purus eros egestas tellus, in auctor urna odio at nibh. Mauris imperdiet nisi ac magna convallis, at rhoncus ligula cursus.
Cras aliquam rhoncus ipsum, in hendrerit nunc mattis vitae. Duis vitae efficitur metus, ac tempus leo. Cras nec fringilla lacus. Quisque sit amet risus at ipsum pharetra commodo. Sed aliquam mauris at consequat eleifend. Praesent porta, augue sed viverra bibendum, neque ante euismod ante, in vehicula justo lorem ac eros. Suspendisse augue libero, venenatis eget tincidunt ut, malesuada at lorem. Donec vitae bibendum arcu. Aenean maximus nulla non pretium iaculis. Quisque imperdiet, nulla in pulvinar aliquet, velit quam ultrices quam, sit amet fringilla leo sem vel nunc. Mauris in lacinia lacus.
Suspendisse a tincidunt lacus. Curabitur at urna sagittis, dictum ante sit amet, euismod magna. Sed rutrum massa id tortor commodo, vitae elementum turpis tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean purus turpis, venenatis a ullamcorper nec, tincidunt et massa. Integer posuere quam rutrum arcu vehicula imperdiet. Mauris ullamcorper quam vitae purus congue, quis euismod magna eleifend. Vestibulum semper vel augue eget tincidunt. Fusce eget justo sodales, dapibus odio eu, ultrices lorem. Duis condimentum lorem id eros commodo, in facilisis mauris scelerisque. Morbi sed auctor leo. Nullam volutpat a lacus quis pharetra. Nulla congue rutrum magna a ornare.
Aliquam in turpis accumsan, malesuada nibh ut, hendrerit justo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Quisque sed erat nec justo posuere suscipit. Donec ut efficitur arcu, in malesuada neque. Nunc dignissim nisl massa, id vulputate nunc pretium nec. Quisque eget urna in risus suscipit ultricies. Pellentesque odio odio, tincidunt in eleifend sed, posuere a diam. Nam gravida nisl convallis semper elementum. Morbi vitae felis faucibus, vulputate orci placerat, aliquet nisi. Aliquam erat volutpat. Maecenas sagittis pulvinar purus, sed porta quam laoreet at.
## Topics
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis posuere tellus ac convallis placerat. Proin tincidunt magna sed ex sollicitudin condimentum. Sed ac faucibus dolor, scelerisque sollicitudin nisi. Cras purus urna, suscipit quis sapien eu, pulvinar tempor diam. Quisque risus orci, mollis id ante sit amet, gravida egestas nisl. Sed ac tempus magna. Proin in dui enim. Donec condimentum, sem id dapibus fringilla, tellus enim condimentum arcu, nec volutpat est felis vel metus. Vestibulum sit amet erat at nulla eleifend gravida.
Nullam vel molestie justo. Curabitur vitae efficitur leo. In hac habitasse platea dictumst. Sed pulvinar mauris dui, eget varius purus congue ac. Nulla euismod, lorem vel elementum dapibus, nunc justo porta mi, sed tempus est est vel tellus. Nam et enim eleifend, laoreet sem sit amet, elementum sem. Morbi ut leo congue, maximus velit ut, finibus arcu. In et libero cursus, rutrum risus non, molestie leo. Nullam congue quam et volutpat malesuada. Sed risus tortor, pulvinar et dictum nec, sodales non mi. Phasellus lacinia commodo laoreet. Nam mollis, erat in feugiat consectetur, purus eros egestas tellus, in auctor urna odio at nibh. Mauris imperdiet nisi ac magna convallis, at rhoncus ligula cursus.
Cras aliquam rhoncus ipsum, in hendrerit nunc mattis vitae. Duis vitae efficitur metus, ac tempus leo. Cras nec fringilla lacus. Quisque sit amet risus at ipsum pharetra commodo. Sed aliquam mauris at consequat eleifend. Praesent porta, augue sed viverra bibendum, neque ante euismod ante, in vehicula justo lorem ac eros. Suspendisse augue libero, venenatis eget tincidunt ut, malesuada at lorem. Donec vitae bibendum arcu. Aenean maximus nulla non pretium iaculis. Quisque imperdiet, nulla in pulvinar aliquet, velit quam ultrices quam, sit amet fringilla leo sem vel nunc. Mauris in lacinia lacus.
Suspendisse a tincidunt lacus. Curabitur at urna sagittis, dictum ante sit amet, euismod magna. Sed rutrum massa id tortor commodo, vitae elementum turpis tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean purus turpis, venenatis a ullamcorper nec, tincidunt et massa. Integer posuere quam rutrum arcu vehicula imperdiet. Mauris ullamcorper quam vitae purus congue, quis euismod magna eleifend. Vestibulum semper vel augue eget tincidunt. Fusce eget justo sodales, dapibus odio eu, ultrices lorem. Duis condimentum lorem id eros commodo, in facilisis mauris scelerisque. Morbi sed auctor leo. Nullam volutpat a lacus quis pharetra. Nulla congue rutrum magna a ornare.
Aliquam in turpis accumsan, malesuada nibh ut, hendrerit justo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Quisque sed erat nec justo posuere suscipit. Donec ut efficitur arcu, in malesuada neque. Nunc dignissim nisl massa, id vulputate nunc pretium nec. Quisque eget urna in risus suscipit ultricies. Pellentesque odio odio, tincidunt in eleifend sed, posuere a diam. Nam gravida nisl convallis semper elementum. Morbi vitae felis faucibus, vulputate orci placerat, aliquet nisi. Aliquam erat volutpat. Maecenas sagittis pulvinar purus, sed porta quam laoreet at.

View file

@ -1,19 +0,0 @@
---
title: Takeaways
linktitle: Takeaways
type: book
date: '2019-05-05T00:00:00+01:00'
# Prev/next pager order (if `docs_section_pager` enabled in `params.toml`)
weight: 3
---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis posuere tellus ac convallis placerat. Proin tincidunt magna sed ex sollicitudin condimentum. Sed ac faucibus dolor, scelerisque sollicitudin nisi. Cras purus urna, suscipit quis sapien eu, pulvinar tempor diam. Quisque risus orci, mollis id ante sit amet, gravida egestas nisl. Sed ac tempus magna. Proin in dui enim. Donec condimentum, sem id dapibus fringilla, tellus enim condimentum arcu, nec volutpat est felis vel metus. Vestibulum sit amet erat at nulla eleifend gravida.
Nullam vel molestie justo. Curabitur vitae efficitur leo. In hac habitasse platea dictumst. Sed pulvinar mauris dui, eget varius purus congue ac. Nulla euismod, lorem vel elementum dapibus, nunc justo porta mi, sed tempus est est vel tellus. Nam et enim eleifend, laoreet sem sit amet, elementum sem. Morbi ut leo congue, maximus velit ut, finibus arcu. In et libero cursus, rutrum risus non, molestie leo. Nullam congue quam et volutpat malesuada. Sed risus tortor, pulvinar et dictum nec, sodales non mi. Phasellus lacinia commodo laoreet. Nam mollis, erat in feugiat consectetur, purus eros egestas tellus, in auctor urna odio at nibh. Mauris imperdiet nisi ac magna convallis, at rhoncus ligula cursus.
Cras aliquam rhoncus ipsum, in hendrerit nunc mattis vitae. Duis vitae efficitur metus, ac tempus leo. Cras nec fringilla lacus. Quisque sit amet risus at ipsum pharetra commodo. Sed aliquam mauris at consequat eleifend. Praesent porta, augue sed viverra bibendum, neque ante euismod ante, in vehicula justo lorem ac eros. Suspendisse augue libero, venenatis eget tincidunt ut, malesuada at lorem. Donec vitae bibendum arcu. Aenean maximus nulla non pretium iaculis. Quisque imperdiet, nulla in pulvinar aliquet, velit quam ultrices quam, sit amet fringilla leo sem vel nunc. Mauris in lacinia lacus.
Suspendisse a tincidunt lacus. Curabitur at urna sagittis, dictum ante sit amet, euismod magna. Sed rutrum massa id tortor commodo, vitae elementum turpis tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean purus turpis, venenatis a ullamcorper nec, tincidunt et massa. Integer posuere quam rutrum arcu vehicula imperdiet. Mauris ullamcorper quam vitae purus congue, quis euismod magna eleifend. Vestibulum semper vel augue eget tincidunt. Fusce eget justo sodales, dapibus odio eu, ultrices lorem. Duis condimentum lorem id eros commodo, in facilisis mauris scelerisque. Morbi sed auctor leo. Nullam volutpat a lacus quis pharetra. Nulla congue rutrum magna a ornare.
Aliquam in turpis accumsan, malesuada nibh ut, hendrerit justo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Quisque sed erat nec justo posuere suscipit. Donec ut efficitur arcu, in malesuada neque. Nunc dignissim nisl massa, id vulputate nunc pretium nec. Quisque eget urna in risus suscipit ultricies. Pellentesque odio odio, tincidunt in eleifend sed, posuere a diam. Nam gravida nisl convallis semper elementum. Morbi vitae felis faucibus, vulputate orci placerat, aliquet nisi. Aliquam erat volutpat. Maecenas sagittis pulvinar purus, sed porta quam laoreet at.

View file

@ -1,54 +0,0 @@
---
# Title, summary, and page position.
linktitle: Chapter 2
summary: Learn how to use Academic's docs layout for publishing online courses, software documentation, and tutorials.
weight: 1
icon: book-reader
icon_pack: fas
# Page metadata.
title: Chapter 2
date: '2018-09-09T00:00:00Z'
type: book # Do not modify.
---
## Flexibility
This feature can be used for publishing content such as:
- **Online courses**
- **Project or software documentation**
- **Tutorials**
- **Notes**
The `courses` folder may be renamed. For example, we can rename it to `docs` for software/project documentation or `tutorials` for creating an online course.
## Delete courses
**To remove these pages, delete the `courses` folder and see below to delete the associated menu link.**
## Update site menu
After renaming or deleting the `courses` folder, you may wish to update any `[[main]]` menu links to it by editing your menu configuration at `config/_default/menus.toml`.
For example, if you delete this folder, you can remove the following from your menu configuration:
```toml
[[main]]
name = "Courses"
url = "courses/"
weight = 50
```
Or, if you are creating a software documentation site, you can rename the `courses` folder to `docs` and update the associated _Courses_ menu configuration to:
```toml
[[main]]
name = "Docs"
url = "docs/"
weight = 50
```
## Update the docs menu
If you use the _docs_ layout, note that the name of the menu in the front matter should be in the form `[menu.X]` where `X` is the folder name. Hence, if you rename the `courses/example/` folder, you should also rename the menu definitions in the front matter of files within `courses/example/` from `[menu.example]` to `[menu.<NewFolderName>]`.

View file

@ -1,34 +0,0 @@
---
title: Reading List
linktitle: Reading List
type: book
date: '2019-05-05T00:00:00+01:00'
# Prev/next pager order (if `docs_section_pager` enabled in `params.toml`)
weight: 2
---
A recommended reading list for the course.
## Books
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis posuere tellus ac convallis placerat. Proin tincidunt magna sed ex sollicitudin condimentum. Sed ac faucibus dolor, scelerisque sollicitudin nisi. Cras purus urna, suscipit quis sapien eu, pulvinar tempor diam. Quisque risus orci, mollis id ante sit amet, gravida egestas nisl. Sed ac tempus magna. Proin in dui enim. Donec condimentum, sem id dapibus fringilla, tellus enim condimentum arcu, nec volutpat est felis vel metus. Vestibulum sit amet erat at nulla eleifend gravida.
Nullam vel molestie justo. Curabitur vitae efficitur leo. In hac habitasse platea dictumst. Sed pulvinar mauris dui, eget varius purus congue ac. Nulla euismod, lorem vel elementum dapibus, nunc justo porta mi, sed tempus est est vel tellus. Nam et enim eleifend, laoreet sem sit amet, elementum sem. Morbi ut leo congue, maximus velit ut, finibus arcu. In et libero cursus, rutrum risus non, molestie leo. Nullam congue quam et volutpat malesuada. Sed risus tortor, pulvinar et dictum nec, sodales non mi. Phasellus lacinia commodo laoreet. Nam mollis, erat in feugiat consectetur, purus eros egestas tellus, in auctor urna odio at nibh. Mauris imperdiet nisi ac magna convallis, at rhoncus ligula cursus.
Cras aliquam rhoncus ipsum, in hendrerit nunc mattis vitae. Duis vitae efficitur metus, ac tempus leo. Cras nec fringilla lacus. Quisque sit amet risus at ipsum pharetra commodo. Sed aliquam mauris at consequat eleifend. Praesent porta, augue sed viverra bibendum, neque ante euismod ante, in vehicula justo lorem ac eros. Suspendisse augue libero, venenatis eget tincidunt ut, malesuada at lorem. Donec vitae bibendum arcu. Aenean maximus nulla non pretium iaculis. Quisque imperdiet, nulla in pulvinar aliquet, velit quam ultrices quam, sit amet fringilla leo sem vel nunc. Mauris in lacinia lacus.
Suspendisse a tincidunt lacus. Curabitur at urna sagittis, dictum ante sit amet, euismod magna. Sed rutrum massa id tortor commodo, vitae elementum turpis tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean purus turpis, venenatis a ullamcorper nec, tincidunt et massa. Integer posuere quam rutrum arcu vehicula imperdiet. Mauris ullamcorper quam vitae purus congue, quis euismod magna eleifend. Vestibulum semper vel augue eget tincidunt. Fusce eget justo sodales, dapibus odio eu, ultrices lorem. Duis condimentum lorem id eros commodo, in facilisis mauris scelerisque. Morbi sed auctor leo. Nullam volutpat a lacus quis pharetra. Nulla congue rutrum magna a ornare.
Aliquam in turpis accumsan, malesuada nibh ut, hendrerit justo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Quisque sed erat nec justo posuere suscipit. Donec ut efficitur arcu, in malesuada neque. Nunc dignissim nisl massa, id vulputate nunc pretium nec. Quisque eget urna in risus suscipit ultricies. Pellentesque odio odio, tincidunt in eleifend sed, posuere a diam. Nam gravida nisl convallis semper elementum. Morbi vitae felis faucibus, vulputate orci placerat, aliquet nisi. Aliquam erat volutpat. Maecenas sagittis pulvinar purus, sed porta quam laoreet at.
## Videos
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis posuere tellus ac convallis placerat. Proin tincidunt magna sed ex sollicitudin condimentum. Sed ac faucibus dolor, scelerisque sollicitudin nisi. Cras purus urna, suscipit quis sapien eu, pulvinar tempor diam. Quisque risus orci, mollis id ante sit amet, gravida egestas nisl. Sed ac tempus magna. Proin in dui enim. Donec condimentum, sem id dapibus fringilla, tellus enim condimentum arcu, nec volutpat est felis vel metus. Vestibulum sit amet erat at nulla eleifend gravida.
Nullam vel molestie justo. Curabitur vitae efficitur leo. In hac habitasse platea dictumst. Sed pulvinar mauris dui, eget varius purus congue ac. Nulla euismod, lorem vel elementum dapibus, nunc justo porta mi, sed tempus est est vel tellus. Nam et enim eleifend, laoreet sem sit amet, elementum sem. Morbi ut leo congue, maximus velit ut, finibus arcu. In et libero cursus, rutrum risus non, molestie leo. Nullam congue quam et volutpat malesuada. Sed risus tortor, pulvinar et dictum nec, sodales non mi. Phasellus lacinia commodo laoreet. Nam mollis, erat in feugiat consectetur, purus eros egestas tellus, in auctor urna odio at nibh. Mauris imperdiet nisi ac magna convallis, at rhoncus ligula cursus.
Cras aliquam rhoncus ipsum, in hendrerit nunc mattis vitae. Duis vitae efficitur metus, ac tempus leo. Cras nec fringilla lacus. Quisque sit amet risus at ipsum pharetra commodo. Sed aliquam mauris at consequat eleifend. Praesent porta, augue sed viverra bibendum, neque ante euismod ante, in vehicula justo lorem ac eros. Suspendisse augue libero, venenatis eget tincidunt ut, malesuada at lorem. Donec vitae bibendum arcu. Aenean maximus nulla non pretium iaculis. Quisque imperdiet, nulla in pulvinar aliquet, velit quam ultrices quam, sit amet fringilla leo sem vel nunc. Mauris in lacinia lacus.
Suspendisse a tincidunt lacus. Curabitur at urna sagittis, dictum ante sit amet, euismod magna. Sed rutrum massa id tortor commodo, vitae elementum turpis tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean purus turpis, venenatis a ullamcorper nec, tincidunt et massa. Integer posuere quam rutrum arcu vehicula imperdiet. Mauris ullamcorper quam vitae purus congue, quis euismod magna eleifend. Vestibulum semper vel augue eget tincidunt. Fusce eget justo sodales, dapibus odio eu, ultrices lorem. Duis condimentum lorem id eros commodo, in facilisis mauris scelerisque. Morbi sed auctor leo. Nullam volutpat a lacus quis pharetra. Nulla congue rutrum magna a ornare.
Aliquam in turpis accumsan, malesuada nibh ut, hendrerit justo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Quisque sed erat nec justo posuere suscipit. Donec ut efficitur arcu, in malesuada neque. Nunc dignissim nisl massa, id vulputate nunc pretium nec. Quisque eget urna in risus suscipit ultricies. Pellentesque odio odio, tincidunt in eleifend sed, posuere a diam. Nam gravida nisl convallis semper elementum. Morbi vitae felis faucibus, vulputate orci placerat, aliquet nisi. Aliquam erat volutpat. Maecenas sagittis pulvinar purus, sed porta quam laoreet at.

View file

@ -1,33 +0,0 @@
---
title: Syllabus
linktitle: Syllabus
type: book
date: '2019-05-05T00:00:00+01:00'
# Prev/next pager order (if `docs_section_pager` enabled in `params.toml`)
weight: 1
---
## Goals
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis posuere tellus ac convallis placerat. Proin tincidunt magna sed ex sollicitudin condimentum. Sed ac faucibus dolor, scelerisque sollicitudin nisi. Cras purus urna, suscipit quis sapien eu, pulvinar tempor diam. Quisque risus orci, mollis id ante sit amet, gravida egestas nisl. Sed ac tempus magna. Proin in dui enim. Donec condimentum, sem id dapibus fringilla, tellus enim condimentum arcu, nec volutpat est felis vel metus. Vestibulum sit amet erat at nulla eleifend gravida.
Nullam vel molestie justo. Curabitur vitae efficitur leo. In hac habitasse platea dictumst. Sed pulvinar mauris dui, eget varius purus congue ac. Nulla euismod, lorem vel elementum dapibus, nunc justo porta mi, sed tempus est est vel tellus. Nam et enim eleifend, laoreet sem sit amet, elementum sem. Morbi ut leo congue, maximus velit ut, finibus arcu. In et libero cursus, rutrum risus non, molestie leo. Nullam congue quam et volutpat malesuada. Sed risus tortor, pulvinar et dictum nec, sodales non mi. Phasellus lacinia commodo laoreet. Nam mollis, erat in feugiat consectetur, purus eros egestas tellus, in auctor urna odio at nibh. Mauris imperdiet nisi ac magna convallis, at rhoncus ligula cursus.
Cras aliquam rhoncus ipsum, in hendrerit nunc mattis vitae. Duis vitae efficitur metus, ac tempus leo. Cras nec fringilla lacus. Quisque sit amet risus at ipsum pharetra commodo. Sed aliquam mauris at consequat eleifend. Praesent porta, augue sed viverra bibendum, neque ante euismod ante, in vehicula justo lorem ac eros. Suspendisse augue libero, venenatis eget tincidunt ut, malesuada at lorem. Donec vitae bibendum arcu. Aenean maximus nulla non pretium iaculis. Quisque imperdiet, nulla in pulvinar aliquet, velit quam ultrices quam, sit amet fringilla leo sem vel nunc. Mauris in lacinia lacus.
Suspendisse a tincidunt lacus. Curabitur at urna sagittis, dictum ante sit amet, euismod magna. Sed rutrum massa id tortor commodo, vitae elementum turpis tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean purus turpis, venenatis a ullamcorper nec, tincidunt et massa. Integer posuere quam rutrum arcu vehicula imperdiet. Mauris ullamcorper quam vitae purus congue, quis euismod magna eleifend. Vestibulum semper vel augue eget tincidunt. Fusce eget justo sodales, dapibus odio eu, ultrices lorem. Duis condimentum lorem id eros commodo, in facilisis mauris scelerisque. Morbi sed auctor leo. Nullam volutpat a lacus quis pharetra. Nulla congue rutrum magna a ornare.
Aliquam in turpis accumsan, malesuada nibh ut, hendrerit justo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Quisque sed erat nec justo posuere suscipit. Donec ut efficitur arcu, in malesuada neque. Nunc dignissim nisl massa, id vulputate nunc pretium nec. Quisque eget urna in risus suscipit ultricies. Pellentesque odio odio, tincidunt in eleifend sed, posuere a diam. Nam gravida nisl convallis semper elementum. Morbi vitae felis faucibus, vulputate orci placerat, aliquet nisi. Aliquam erat volutpat. Maecenas sagittis pulvinar purus, sed porta quam laoreet at.
## Topics
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis posuere tellus ac convallis placerat. Proin tincidunt magna sed ex sollicitudin condimentum. Sed ac faucibus dolor, scelerisque sollicitudin nisi. Cras purus urna, suscipit quis sapien eu, pulvinar tempor diam. Quisque risus orci, mollis id ante sit amet, gravida egestas nisl. Sed ac tempus magna. Proin in dui enim. Donec condimentum, sem id dapibus fringilla, tellus enim condimentum arcu, nec volutpat est felis vel metus. Vestibulum sit amet erat at nulla eleifend gravida.
Nullam vel molestie justo. Curabitur vitae efficitur leo. In hac habitasse platea dictumst. Sed pulvinar mauris dui, eget varius purus congue ac. Nulla euismod, lorem vel elementum dapibus, nunc justo porta mi, sed tempus est est vel tellus. Nam et enim eleifend, laoreet sem sit amet, elementum sem. Morbi ut leo congue, maximus velit ut, finibus arcu. In et libero cursus, rutrum risus non, molestie leo. Nullam congue quam et volutpat malesuada. Sed risus tortor, pulvinar et dictum nec, sodales non mi. Phasellus lacinia commodo laoreet. Nam mollis, erat in feugiat consectetur, purus eros egestas tellus, in auctor urna odio at nibh. Mauris imperdiet nisi ac magna convallis, at rhoncus ligula cursus.
Cras aliquam rhoncus ipsum, in hendrerit nunc mattis vitae. Duis vitae efficitur metus, ac tempus leo. Cras nec fringilla lacus. Quisque sit amet risus at ipsum pharetra commodo. Sed aliquam mauris at consequat eleifend. Praesent porta, augue sed viverra bibendum, neque ante euismod ante, in vehicula justo lorem ac eros. Suspendisse augue libero, venenatis eget tincidunt ut, malesuada at lorem. Donec vitae bibendum arcu. Aenean maximus nulla non pretium iaculis. Quisque imperdiet, nulla in pulvinar aliquet, velit quam ultrices quam, sit amet fringilla leo sem vel nunc. Mauris in lacinia lacus.
Suspendisse a tincidunt lacus. Curabitur at urna sagittis, dictum ante sit amet, euismod magna. Sed rutrum massa id tortor commodo, vitae elementum turpis tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean purus turpis, venenatis a ullamcorper nec, tincidunt et massa. Integer posuere quam rutrum arcu vehicula imperdiet. Mauris ullamcorper quam vitae purus congue, quis euismod magna eleifend. Vestibulum semper vel augue eget tincidunt. Fusce eget justo sodales, dapibus odio eu, ultrices lorem. Duis condimentum lorem id eros commodo, in facilisis mauris scelerisque. Morbi sed auctor leo. Nullam volutpat a lacus quis pharetra. Nulla congue rutrum magna a ornare.
Aliquam in turpis accumsan, malesuada nibh ut, hendrerit justo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Quisque sed erat nec justo posuere suscipit. Donec ut efficitur arcu, in malesuada neque. Nunc dignissim nisl massa, id vulputate nunc pretium nec. Quisque eget urna in risus suscipit ultricies. Pellentesque odio odio, tincidunt in eleifend sed, posuere a diam. Nam gravida nisl convallis semper elementum. Morbi vitae felis faucibus, vulputate orci placerat, aliquet nisi. Aliquam erat volutpat. Maecenas sagittis pulvinar purus, sed porta quam laoreet at.

View file

@ -1,21 +0,0 @@
---
title: Takeaways
linktitle: Takeaways
toc: true
type: book
date: '2019-05-05T00:00:00+01:00'
draft: true
# Prev/next pager order (if `docs_section_pager` enabled in `params.toml`)
weight: 3
---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis posuere tellus ac convallis placerat. Proin tincidunt magna sed ex sollicitudin condimentum. Sed ac faucibus dolor, scelerisque sollicitudin nisi. Cras purus urna, suscipit quis sapien eu, pulvinar tempor diam. Quisque risus orci, mollis id ante sit amet, gravida egestas nisl. Sed ac tempus magna. Proin in dui enim. Donec condimentum, sem id dapibus fringilla, tellus enim condimentum arcu, nec volutpat est felis vel metus. Vestibulum sit amet erat at nulla eleifend gravida.
Nullam vel molestie justo. Curabitur vitae efficitur leo. In hac habitasse platea dictumst. Sed pulvinar mauris dui, eget varius purus congue ac. Nulla euismod, lorem vel elementum dapibus, nunc justo porta mi, sed tempus est est vel tellus. Nam et enim eleifend, laoreet sem sit amet, elementum sem. Morbi ut leo congue, maximus velit ut, finibus arcu. In et libero cursus, rutrum risus non, molestie leo. Nullam congue quam et volutpat malesuada. Sed risus tortor, pulvinar et dictum nec, sodales non mi. Phasellus lacinia commodo laoreet. Nam mollis, erat in feugiat consectetur, purus eros egestas tellus, in auctor urna odio at nibh. Mauris imperdiet nisi ac magna convallis, at rhoncus ligula cursus.
Cras aliquam rhoncus ipsum, in hendrerit nunc mattis vitae. Duis vitae efficitur metus, ac tempus leo. Cras nec fringilla lacus. Quisque sit amet risus at ipsum pharetra commodo. Sed aliquam mauris at consequat eleifend. Praesent porta, augue sed viverra bibendum, neque ante euismod ante, in vehicula justo lorem ac eros. Suspendisse augue libero, venenatis eget tincidunt ut, malesuada at lorem. Donec vitae bibendum arcu. Aenean maximus nulla non pretium iaculis. Quisque imperdiet, nulla in pulvinar aliquet, velit quam ultrices quam, sit amet fringilla leo sem vel nunc. Mauris in lacinia lacus.
Suspendisse a tincidunt lacus. Curabitur at urna sagittis, dictum ante sit amet, euismod magna. Sed rutrum massa id tortor commodo, vitae elementum turpis tempus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean purus turpis, venenatis a ullamcorper nec, tincidunt et massa. Integer posuere quam rutrum arcu vehicula imperdiet. Mauris ullamcorper quam vitae purus congue, quis euismod magna eleifend. Vestibulum semper vel augue eget tincidunt. Fusce eget justo sodales, dapibus odio eu, ultrices lorem. Duis condimentum lorem id eros commodo, in facilisis mauris scelerisque. Morbi sed auctor leo. Nullam volutpat a lacus quis pharetra. Nulla congue rutrum magna a ornare.
Aliquam in turpis accumsan, malesuada nibh ut, hendrerit justo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Quisque sed erat nec justo posuere suscipit. Donec ut efficitur arcu, in malesuada neque. Nunc dignissim nisl massa, id vulputate nunc pretium nec. Quisque eget urna in risus suscipit ultricies. Pellentesque odio odio, tincidunt in eleifend sed, posuere a diam. Nam gravida nisl convallis semper elementum. Morbi vitae felis faucibus, vulputate orci placerat, aliquet nisi. Aliquam erat volutpat. Maecenas sagittis pulvinar purus, sed porta quam laoreet at.

View file

@ -0,0 +1,36 @@
---
title: Getting Started
date: 2024-02-17
weight: 1
---
## Quick Start from Template
{{% steps %}}
### Initialize a new site
[Click to copy the template on GitHub](https://github.com/new?template_name=theme-documentation&template_owner=HugoBlox)
### Configure your new site
[Configure your site name, description, and menu.](https://docs.hugoblox.com/tutorial/blog/)
### Add your content
[Edit the homepage and add your documentation pages.](https://docs.hugoblox.com/tutorial/blog/)
### Publish your site
[Easily publish your site for free with GitHub Pages](https://docs.hugoblox.com/tutorial/blog/)
{{% /steps %}}
## Next
Let's customize your new site:
{{< cards >}}
{{< card url="../guide/project-structure" title="Project Structure" icon="document-duplicate" >}}
{{< card url="../guide/configuration" title="Configuration" icon="adjustments-vertical" >}}
{{< /cards >}}

View file

@ -0,0 +1,11 @@
---
title: Guide
weight: 2
sidebar:
open: true
---
{{< cards >}}
{{< card url="project-structure" title="Project Structure" icon="document-duplicate" >}}
{{< card url="configuration" title="Configuration" icon="adjustments-vertical" >}}
{{< /cards >}}

View file

@ -0,0 +1,54 @@
---
title: Configuration
weight: 2
---
The configuration of your site can be found in `config/_default/`.
<!--more-->
## Full Documentation
See https://docs.hugoblox.com/getting-started/customize/
## Navigation
### Menu
See https://docs.hugoblox.com/getting-started/customize/#menu-items
## Left Sidebar
Links are automatically generated from the structure of your content directory. Simply add a folder to nest a page.
### Extra Links
Additional links can be added under the `sidebar` section of your `config/_default/menus.yaml`:
```yaml
menu:
sidebar:
- name: "Need help?"
params:
type: separator
weight: 1
- name: "A page"
pageRef: "/page-filename-here"
weight: 2
- name: "An external link ↗"
url: "https://hugoblox.com"
weight: 3
```
## Right Sidebar
A table of contents is automatically generated from the headings your Markdown file.
It can optionally be disabled by setting `toc: false` in the front matter of a page:
```yaml
---
title: My Page
toc: false
---
```

View file

@ -0,0 +1,59 @@
---
title: Project Structure
weight: 1
---
## Folder Structure
There are **4 main folders for Hugo-based sites**:
- `content/` for your Markdown-formatted content files (homepage, etc.)
- `_index.md` the homepage (**Hugo requires that the homepage and archive pages have an underscore prefix**)
- `assets/`
- `media/` for your media files (images, videos)
- `icons/` upload any custom SVG icons you want to use
- `config/_default/` for your site configuration files
- `hugo.yaml` to configure Hugo (site title, URL, Hugo options, setup per-folder page features)
- `module.yaml` to install or uninstall Hugo themes and plugins
- `params.yaml` to configure Hugo Blox options (SEO, analytics, site features)
- `menus.yaml` to configure your menu links (if the menu is enabled in `params.yaml`)
- `languages.yaml` to configure your site's language or to set language-specific options in a multilingual site
- `static/uploads/` for any files you want visitors to download, such as a PDF
- `go.mod` sets the version of Hugo themes/plugins which your site uses
## Hugo File Naming Convention
Hugo gives us two options to name standard page files: as `TITLE/index.md` or `TITLE.md` where `TITLE` is your page name.
The page name should be lowercase and using hyphens (`-`) instead of spaces.
Both approaches result in the same output, so you can choose your preferred approach to naming and organizing files. A benefit to the folder-based approach is that all your page's files (such as images) are self-contained within the page's folder, so it's more portable if you wish to share the original Markdown page with someone.
The homepage is a special case as **Hugo requires the homepage and listing pages to be named** `_index.md`.
## Docs Navigation
The docs navigation is automatically generated based on the content in the `docs/` folder and is sorted alphabetically.
The order of pages can be changed by adding the `weight` parameter in the front matter of your Markdown files.
In the example below, the `example.md` page will appear before the `test.md` page as it has a lower `weight`:
Page `example.md`:
```yaml
---
title: My Example
weight: 1
---
```
Page `test.md`:
```yaml
---
title: My Test
weight: 2
---
```

View file

@ -0,0 +1,12 @@
---
title: Shortcodes
---
Build the best docs with re-usable components, referred to as Hugo shortcodes:
{{< cards >}}
{{< card url="callout" title="Callout" icon="warning" >}}
{{< card url="cards" title="Cards" icon="card" >}}
{{< card url="toggle" title="Spoiler" icon="chevron-right" >}}
{{< card url="steps" title="Steps" icon="one" >}}
{{< /cards >}}

View file

@ -0,0 +1,36 @@
---
title: Callout Shortcode
linkTitle: Callout
---
Hugo Blox supports a Markdown extension for callouts, also referred to as alerts or asides.
Callouts are a useful feature to draw attention to important or related content such as notes, hints, or warnings in your articles.
<!--more-->
## Usage
### Notes
{{% callout note %}}
A Markdown callout is useful for displaying notices, hints, or definitions to your readers.
{{% /callout %}}
```markdown
{{%/* callout note */%}}
A Markdown callout is useful for displaying notices, hints, or definitions to your readers.
{{%/* /callout */%}}
```
### Warnings
{{% callout warning %}}
Here's some important information...
{{% /callout %}}
```markdown
{{%/* callout warning */%}}
Here's some important information...
{{%/* /callout */%}}
```

View file

@ -0,0 +1,31 @@
---
title: Cards Shortcode
linkTitle: Cards
---
A Hugo extension to create cards. Cards can be shown as links or as plain text.
## Usage
{{< cards >}}
{{< card url="../" title="Learn Shortcodes" icon="academic-cap" >}}
{{< card url="" title="A card without an icon or link" >}}
{{< /cards >}}
is rendered by:
```
{{</* cards */>}}
{{</* card url="../callout" title="Callout" icon="academic-cap" */>}}
{{</* card url="" title="A card without an icon" */>}}
{{</* /cards */>}}
```
## Options
| Parameter | Description |
|------------|------------------------------------------------------------------------|
| `icon` | Name of the icon. Defaults to [Hero Icon Pack](https://heroicons.com/) |
| `title` | Title heading for the card. |
| `subtitle` | Subtitle heading (supports Markdown). |
| `url` | URL |

View file

@ -0,0 +1,47 @@
---
title: Steps Shortcode
linkTitle: Steps
---
Display a series of steps, such as for a tutorial.
## Example
{{% steps %}}
### Step 1
The first step here...
### Step 2
The second step here...
### Step 3
The third step here...
{{% /steps %}}
## Usage
Use the Markdown level-3 headings to represent step titles within the `steps` shortcode:
```
{{%/* steps */%}}
### Step 1
The first step here...
### Step 2
The second step here...
### Step 3
The third step here...
{{%/* /steps */%}}
```

View file

@ -0,0 +1,27 @@
---
title: Spoiler
---
A Hugo shortcode to toggle collapsible content.
<!--more-->
## Example
{{< spoiler text="Click to view the spoiler" >}}
You found me!
Markdown is **supported**.
{{< /spoiler >}}
## Usage
````
{{</* spoiler text="Click to view the spoiler" */>}}
This is the content of the details.
Markdown is **supported**.
{{</* /spoiler */>}}
````

View file

@ -0,0 +1,7 @@
---
linkTitle: Reference
title: Reference
---
This section covers reference docs.

View file

@ -0,0 +1,7 @@
---
title: Customizing Hugo
linkTitle: Customization
weight: 1
---
View the full docs at https://docs.hugoblox.com/getting-started/customize/

View file

@ -0,0 +1,9 @@
---
title: Internationalization (i18n)
---
Hugo Blox enables you to easily edit the interface text as well as translating your site into multiple languages using Hugo's [multilingual](https://gohugo.io/content-management/multilingual/) feature.
<!--more-->
View the full docs at https://docs.hugoblox.com/reference/language/

View file

@ -1,20 +0,0 @@
---
widget: featurette
headless: true
weight: 20
title: Features
subtitle: Document _anything_
feature:
- icon: book-open
icon_pack: fas
name: Project Documentation
description: For users
- icon: question
icon_pack: fas
name: Knowledge Base
description: For teams
- icon: list-alt
icon_pack: fas
name: Personal Notebook
description: For yourself
---

View file

@ -1,31 +0,0 @@
---
widget: hero
headless: true
weight: 10
title: Project Docs Template
hero_media: book.svg
design:
background:
gradient_start: '#4bb4e3'
gradient_end: '#2b94c3'
text_color_light: true
cta:
url: docs/
label: Get Started
icon_pack: fas
icon: download
cta_alt:
url: docs/
label: View Documentation
cta_note:
label: >-
<span class="js-github-release" data-repo="wowchemy/wowchemy-hugo-themes">
Project version will appear here<!-- Automatically filled based on data-repo value -->
</span>
---
Published with the [Wowchemy Website Builder](https://hugoblox.com/) for Hugo.
Write something interesting about your project here.
<a class="github-button" href="https://github.com/HugoBlox/hugo-blox-builder" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star Wowchemy Website Builder for Hugo">Star Wowchemy Website Builder for Hugo</a><br><a class="github-button" href="https://github.com/wowchemy/hugo-documentation-theme" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star the Project Docs template">Star the Hugo Documentation Theme</a><script async defer src="https://buttons.github.io/buttons.js"></script>

View file

@ -1,7 +0,0 @@
---
# Homepage
type: 'widget_page'
# Homepage is headless, other widget pages are not.
headless: true
---

View file

@ -0,0 +1,3 @@
---
title: Blog
---

Binary file not shown.

After

Width:  |  Height:  |  Size: 228 KiB

View file

@ -0,0 +1,41 @@
---
title: v1.0.0 Released!
summary: Hugo v1.0.0 released. Download now and follow the guide to get started in 5 minutes!
date: 2023-01-01
authors:
- admin
tags:
- Hugo
- Hugo Blox
- Markdown
image:
caption: 'Image credit: [**Unsplash**](https://unsplash.com)'
---
Hugo v1.0.0 is now available! This release includes new experimental features to try out, improvements to accessibility, the ability for plugins to customize image optimization in Markdown, and many more improvements and bug fixes.
Highlights include:
- New config options
- Improved accessibility
- Customizable image optimization in Markdown
Thank you to everyone who contributed to this release!
## New Features
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean vitae fringilla sem. Integer mattis dictum augue non auctor. Proin quis porttitor enim. Praesent vulputate arcu egestas scelerisque condimentum. Vivamus elit risus, suscipit et enim et, viverra molestie elit. Nulla ullamcorper nisl vel nisi pellentesque, id feugiat risus interdum. Duis consequat ipsum elit. Aenean hendrerit diam ipsum, a convallis magna congue et. Sed ex erat, pretium et ante id, malesuada luctus nibh. Nunc nec consectetur elit.
## Bug Fixes
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean vitae fringilla sem. Integer mattis dictum augue non auctor. Proin quis porttitor enim. Praesent vulputate arcu egestas scelerisque condimentum. Vivamus elit risus, suscipit et enim et, viverra molestie elit. Nulla ullamcorper nisl vel nisi pellentesque, id feugiat risus interdum. Duis consequat ipsum elit. Aenean hendrerit diam ipsum, a convallis magna congue et. Sed ex erat, pretium et ante id, malesuada luctus nibh. Nunc nec consectetur elit.
## How to Upgrade
Simply run the following command in your terminal:
```bash
hugo mod get -u github.com/HugoBlox/hugo-blox-builder/modules/blox-tailwind@main
```
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean vitae fringilla sem. Integer mattis dictum augue non auctor. Proin quis porttitor enim. Praesent vulputate arcu egestas scelerisque condimentum. Vivamus elit risus, suscipit et enim et, viverra molestie elit. Nulla ullamcorper nisl vel nisi pellentesque, id feugiat risus interdum. Duis consequat ipsum elit. Aenean hendrerit diam ipsum, a convallis magna congue et. Sed ex erat, pretium et ante id, malesuada luctus nibh. Nunc nec consectetur elit.

Binary file not shown.

After

Width:  |  Height:  |  Size: 228 KiB

View file

@ -0,0 +1,41 @@
---
title: v2.0.0 Released!
summary: Hugo v2.0.0 released. Download now and follow the guide to get started in 5 minutes!
date: 2024-01-19
authors:
- admin
tags:
- Hugo
- Hugo Blox
- Markdown
image:
caption: 'Image credit: [**Unsplash**](https://unsplash.com)'
---
Hugo v2.0.0 is now available! This release includes new experimental features to try out, improvements to accessibility, the ability for plugins to customize image optimization in Markdown, and many more improvements and bug fixes.
Highlights include:
- New config options
- Improved accessibility
- Customizable image optimization in Markdown
Thank you to everyone who contributed to this release!
## New Features
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean vitae fringilla sem. Integer mattis dictum augue non auctor. Proin quis porttitor enim. Praesent vulputate arcu egestas scelerisque condimentum. Vivamus elit risus, suscipit et enim et, viverra molestie elit. Nulla ullamcorper nisl vel nisi pellentesque, id feugiat risus interdum. Duis consequat ipsum elit. Aenean hendrerit diam ipsum, a convallis magna congue et. Sed ex erat, pretium et ante id, malesuada luctus nibh. Nunc nec consectetur elit.
## Bug Fixes
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean vitae fringilla sem. Integer mattis dictum augue non auctor. Proin quis porttitor enim. Praesent vulputate arcu egestas scelerisque condimentum. Vivamus elit risus, suscipit et enim et, viverra molestie elit. Nulla ullamcorper nisl vel nisi pellentesque, id feugiat risus interdum. Duis consequat ipsum elit. Aenean hendrerit diam ipsum, a convallis magna congue et. Sed ex erat, pretium et ante id, malesuada luctus nibh. Nunc nec consectetur elit.
## How to Upgrade
Simply run the following command in your terminal:
```bash
hugo mod get -u github.com/HugoBlox/hugo-blox-builder/modules/blox-tailwind@main
```
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean vitae fringilla sem. Integer mattis dictum augue non auctor. Proin quis porttitor enim. Praesent vulputate arcu egestas scelerisque condimentum. Vivamus elit risus, suscipit et enim et, viverra molestie elit. Nulla ullamcorper nisl vel nisi pellentesque, id feugiat risus interdum. Duis consequat ipsum elit. Aenean hendrerit diam ipsum, a convallis magna congue et. Sed ex erat, pretium et ante id, malesuada luctus nibh. Nunc nec consectetur elit.

View file

@ -0,0 +1,34 @@
---
title: Showcase
description: "Docs websites powered by Hugo Blox."
type: landing
sections:
- block: hero
content:
title: Get Inspirated
text: 'Get inspired by exploring sites #MadeWithHugoBlox'
primary_action:
icon: brands/x
text: Submit Your Site
url: "https://twitter.com/intent/tweet?text=I%27m%20creating%20a%20beautiful%20website%20using%20the%20free%20%E2%9D%A4%EF%B8%8F%2C%20open%20source%20Hugo%20Blox%20Website%20Builder%20for%20%40GoHugoIO%20by%20%40GeorgeCushen%20%40GetResearchDev%20%E2%9C%A8%20Have%20some%20feedback%3F%20Please%20comment%20%F0%9F%A4%97&hashtags=MadeWithHugoBlox&url=https://HugoBlox.com/"
secondary_action:
text: Explore More on HugoBlox.com
url: https://hugoblox.com/creators/
design:
no_padding: true
spacing:
padding: [0, 0, 0, 0]
margin: [0, 0, 0, 0]
- block: collection
content:
filters:
folders:
- showcase
design:
view: card
spacing:
padding: ['3rem', 0, '6rem', 0]
---

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

View file

@ -0,0 +1,6 @@
---
title: Nvidia
summary: nvidia.com
external_link: https://research.nvidia.com/labs/toronto-ai/
date: 2024-02-17
---

View file

@ -3,6 +3,6 @@ module github.com/wowchemy/hugo-documentation-theme
go 1.15
require (
github.com/HugoBlox/hugo-blox-builder/modules/blox-bootstrap/v5 v5.9.7-0.20231108143325-448ed0e3bd2b
github.com/HugoBlox/hugo-blox-builder/modules/blox-plugin-netlify v1.1.2-0.20231108143325-448ed0e3bd2b
github.com/HugoBlox/hugo-blox-builder/modules/blox-plugin-netlify v1.1.2-0.20240217212918-ae7f0c597978
github.com/HugoBlox/hugo-blox-builder/modules/blox-tailwind v0.2.1-0.20240218004752-06e9c42adcfe
)

View file

@ -1,9 +1,9 @@
[build]
command = "hugo --gc --minify -b $URL"
command = "hugo --gc --minify -b $URL && npx pagefind --source 'public'"
publish = "public"
[build.environment]
HUGO_VERSION = "0.119.0"
HUGO_VERSION = "0.122.0"
HUGO_ENABLEGITINFO = "true"
[context.production.environment]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB