commit 77fdac90ad06d76c8e5b42db74fc2cfbb513e185 Author: Samuel Ortion Date: Sun Mar 10 11:06:06 2024 +0100 Initial commit with doom-one inspired theme diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..8aa2645 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) [year] [fullname] + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..7cec74e --- /dev/null +++ b/README.md @@ -0,0 +1,7 @@ +# Theme Name + +## Features + +## Installation + +## Configuration diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..c6f3fce --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,5 @@ ++++ +title = '{{ replace .File.ContentBaseName "-" " " | title }}' +date = {{ .Date }} +draft = true ++++ diff --git a/assets/css/* b/assets/css/* new file mode 100644 index 0000000..4da6f9b --- /dev/null +++ b/assets/css/* @@ -0,0 +1,33 @@ + +body { + color: #222; + font-family: sans-serif; + line-height: 1.5; + margin: 1rem; + max-width: 768px; + background-color: #282c34; + color: white; +} + +h1 { + color: #4faeef; +} + +h2, h2 a { + color: #98be64; +} + +header { + border-bottom: 1px solid #222; + margin-bottom: 1rem; +} + +footer { + border-top: 1px solid #222; + margin-top: 1rem; +} + +a { + color: #00e; + text-decoration: none; +} diff --git a/assets/css/main.css b/assets/css/main.css new file mode 100644 index 0000000..ab5badc --- /dev/null +++ b/assets/css/main.css @@ -0,0 +1,69 @@ +/** Use doom-one theme: */ +body { + color: #222; + font-family: sans-serif; + line-height: 1.5; + margin: 1rem; + max-width: 768px; + background-color: #282c34; + color: white; +} + +h1 { + color: #4faeef; +} + +h2, +h2 a { + color: #98be64; +} + +header { + border-bottom: 1px solid #222; + margin-bottom: 1rem; +} + +footer { + border-top: 1px solid #222; + margin-top: 1rem; +} + +a { + color: #50afef; + text-decoration: none; +} + +img { + height: auto; + max-width: 100%; +} + +/* menu */ +nav li { + list-style: none; + padding-left: 1em; +} + +nav li:nth-of-type(1) { + padding-left: 0; +} + +nav ul { + display: flex; + flex-direction: row; +} + +/* tags */ +ul.tags li { + list-style: none; + margin: 0.25em; +} +ul.tags li::before { + content: "#"; + color: #98be64; +} + +ul.tags { + display: flex; + flex-direction: row; +} diff --git a/assets/js/main.js b/assets/js/main.js new file mode 100644 index 0000000..e2aac52 --- /dev/null +++ b/assets/js/main.js @@ -0,0 +1 @@ +console.log('This site was generated by Hugo.'); diff --git a/content/_index.md b/content/_index.md new file mode 100644 index 0000000..e69de29 diff --git a/content/posts/_index.md b/content/posts/_index.md new file mode 100644 index 0000000..e69de29 diff --git a/hugo.toml b/hugo.toml new file mode 100644 index 0000000..890e58d --- /dev/null +++ b/hugo.toml @@ -0,0 +1,23 @@ +baseURL = 'https://example.org/' +languageCode = 'en-us' +title = 'My New Hugo Site' + +[[menus.main]] +name = 'Home' +pageRef = '/' +weight = 10 + +[[menus.main]] +name = 'Posts' +pageRef = '/posts' +weight = 20 + +[[menus.main]] +name = 'Tags' +pageRef = '/tags' +weight = 30 + +[module] + [module.hugoVersion] + extended = false + min = "0.116.0" diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html new file mode 100644 index 0000000..ce9613a --- /dev/null +++ b/layouts/_default/baseof.html @@ -0,0 +1,17 @@ + + + + {{ partial "head.html" . }} + + +
+ {{ partial "header.html" . }} +
+
+ {{ block "main" . }}{{ end }} +
+ + + diff --git a/layouts/_default/home.html b/layouts/_default/home.html new file mode 100644 index 0000000..0df6597 --- /dev/null +++ b/layouts/_default/home.html @@ -0,0 +1,7 @@ +{{ define "main" }} + {{ .Content }} + {{ range site.RegularPages }} +

{{ .LinkTitle }}

+ {{ .Summary }} + {{ end }} +{{ end }} diff --git a/layouts/_default/list.html b/layouts/_default/list.html new file mode 100644 index 0000000..50fc92d --- /dev/null +++ b/layouts/_default/list.html @@ -0,0 +1,8 @@ +{{ define "main" }} +

{{ .Title }}

+ {{ .Content }} + {{ range .Pages }} +

{{ .LinkTitle }}

+ {{ .Summary }} + {{ end }} +{{ end }} diff --git a/layouts/_default/single.html b/layouts/_default/single.html new file mode 100644 index 0000000..f5d1d09 --- /dev/null +++ b/layouts/_default/single.html @@ -0,0 +1,9 @@ +{{ define "main" }} +

{{ .Title }}

+ +{{ $dateMachine := .Date | time.Format "2006-01-02T15:04:05-07:00" }} {{ +$dateHuman := .Date | time.Format ":date_long" }} + + +{{ .Content }} {{ partial "terms.html" (dict "taxonomy" "tags" "page" .) }} {{ +end }} diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html new file mode 100644 index 0000000..0fd3cbf --- /dev/null +++ b/layouts/partials/footer.html @@ -0,0 +1,10 @@ +

+ Copyleft 2020 - {{ now.Year }}. +

+

This work is licensed under CC BY 4.0

\ No newline at end of file diff --git a/layouts/partials/head.html b/layouts/partials/head.html new file mode 100644 index 0000000..8403b28 --- /dev/null +++ b/layouts/partials/head.html @@ -0,0 +1,13 @@ + + + + {{ if .IsHome }}{{ site.Title |plainify }}{{ else }}{{ printf "%s | %s" .Title + site.Title | plainify }}{{ end }} + +{{ partialCached "head/css.html" . }} {{ partialCached "head/js.html" . }} + + +{{ if .Param "math" }} {{ partialCached "math.html" . }} {{ end }} + + +{{ if .Param "pseudocode" }} {{ partialCached "pseudocode.html" . }} {{ end }} diff --git a/layouts/partials/head/css.html b/layouts/partials/head/css.html new file mode 100644 index 0000000..91b928d --- /dev/null +++ b/layouts/partials/head/css.html @@ -0,0 +1,9 @@ +{{- with resources.Get "css/main.css" }} + {{- if eq hugo.Environment "development" }} + + {{- else }} + {{- with . | minify | fingerprint }} + + {{- end }} + {{- end }} +{{- end }} diff --git a/layouts/partials/head/js.html b/layouts/partials/head/js.html new file mode 100644 index 0000000..18fe842 --- /dev/null +++ b/layouts/partials/head/js.html @@ -0,0 +1,12 @@ +{{- with resources.Get "js/main.js" }} + {{- if eq hugo.Environment "development" }} + {{- with . | js.Build }} + + {{- end }} + {{- else }} + {{- $opts := dict "minify" true }} + {{- with . | js.Build $opts | fingerprint }} + + {{- end }} + {{- end }} +{{- end }} diff --git a/layouts/partials/header.html b/layouts/partials/header.html new file mode 100644 index 0000000..9d5d5d9 --- /dev/null +++ b/layouts/partials/header.html @@ -0,0 +1,2 @@ +

{{ site.Title | safeHTML }}

+{{ partial "menu.html" (dict "menuID" "main" "page" .) }} diff --git a/layouts/partials/math.html b/layouts/partials/math.html new file mode 100644 index 0000000..1a3b2e1 --- /dev/null +++ b/layouts/partials/math.html @@ -0,0 +1,21 @@ + + diff --git a/layouts/partials/menu.html b/layouts/partials/menu.html new file mode 100644 index 0000000..7183180 --- /dev/null +++ b/layouts/partials/menu.html @@ -0,0 +1,51 @@ +{{- /* +Renders a menu for the given menu ID. + +@context {page} page The current page. +@context {string} menuID The menu ID. + +@example: {{ partial "menu.html" (dict "menuID" "main" "page" .) }} +*/}} + +{{- $page := .page }} +{{- $menuID := .menuID }} + +{{- with index site.Menus $menuID }} + +{{- end }} + +{{- define "partials/inline/menu/walk.html" }} + {{- $page := .page }} + {{- range .menuEntries }} + {{- $attrs := dict "href" .URL }} + {{- if $page.IsMenuCurrent .Menu . }} + {{- $attrs = merge $attrs (dict "class" "active" "aria-current" "page") }} + {{- else if $page.HasMenuCurrent .Menu .}} + {{- $attrs = merge $attrs (dict "class" "ancestor" "aria-current" "true") }} + {{- end }} + {{- $name := .Name }} + {{- with .Identifier }} + {{- with T . }} + {{- $name = . }} + {{- end }} + {{- end }} +
  • + {{ $name }} + {{- with .Children }} + + {{- end }} +
  • + {{- end }} +{{- end }} diff --git a/layouts/partials/pseudocode-render.html b/layouts/partials/pseudocode-render.html new file mode 100644 index 0000000..3e961a7 --- /dev/null +++ b/layouts/partials/pseudocode-render.html @@ -0,0 +1,6 @@ + diff --git a/layouts/partials/pseudocode.html b/layouts/partials/pseudocode.html new file mode 100644 index 0000000..0aac2c3 --- /dev/null +++ b/layouts/partials/pseudocode.html @@ -0,0 +1,14 @@ + + + + diff --git a/layouts/partials/terms.html b/layouts/partials/terms.html new file mode 100644 index 0000000..5fc384f --- /dev/null +++ b/layouts/partials/terms.html @@ -0,0 +1,16 @@ +{{- /* For a given taxonomy, renders a list of terms assigned to the page. +@context {page} page The current page. @context {string} taxonomy The taxonony. +@example: {{ partial "terms.html" (dict "taxonomy" "tags" "page" .) }} */}} {{- +$page := .page }} {{- $taxonomy := .taxonomy }} {{- with $page.GetTerms +$taxonomy }} {{- $label := (index . 0).Parent.LinkTitle }} +
    + + +
    +{{- end }} diff --git a/static/favicon.ico b/static/favicon.ico new file mode 100644 index 0000000..67f8b77 Binary files /dev/null and b/static/favicon.ico differ diff --git a/theme.toml b/theme.toml new file mode 100644 index 0000000..45f7e00 --- /dev/null +++ b/theme.toml @@ -0,0 +1,26 @@ +name = 'mus' +license = 'AGPL-v3-or-later' +licenselink = 'https://github.com/owner/repo/LICENSE' +description = 'Samulus custome hugo theme' + +# The home page of the theme, where the source can be found +homepage = 'https://forge.s1gm4.eu/sortion/hugo-mus-theme' + +# If you have a running demo of the theme +# demosite = 'https://owner.github.io/repo' + +# Taxonomy terms +tags = ['blog', 'company'] +features = ['some', 'awesome', 'features'] + + +# If the theme has a single author +[author] + name = 'Samuel Ortion' + homepage = 'samuel.ortion.fr' + +# If porting an existing theme +[original] + author = 'Name of original author' + homepage = 'Website of original author' + repo = 'https://github.com/owner/repo'