commit 1a6d1fc887ca5edd65228b3bebadc5ee071522b7 Author: NaiJi Date: Fri Aug 1 00:44:04 2025 -0400 Init diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..56af776 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +public/ +*.lock diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..25b6752 --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,5 @@ ++++ +date = '{{ .Date }}' +draft = true +title = '{{ replace .File.ContentBaseName "-" " " | title }}' ++++ diff --git a/assets/banner-left.jpg b/assets/banner-left.jpg new file mode 100644 index 0000000..b91b8c8 Binary files /dev/null and b/assets/banner-left.jpg differ diff --git a/assets/banner-right.jpg b/assets/banner-right.jpg new file mode 100644 index 0000000..01a3a52 Binary files /dev/null and b/assets/banner-right.jpg differ diff --git a/content/en/first-record.md b/content/en/first-record.md new file mode 100644 index 0000000..ecdfbc3 --- /dev/null +++ b/content/en/first-record.md @@ -0,0 +1,8 @@ ++++ +date = '2025-08-01T00:15:49-04:00' +title = 'First Record' ++++ + +“But, on the other hand, more frank in the evening! In the evening sincere and frank,” repeated Lebedeff, earnestly. “More candid, more exact, more honest, more honourable, and... although I may show you my weak side, I challenge you all; you atheists, for instance! How are you going to save the world? How find a straight road of progress, you men of science, of industry, of cooperation, of trades unions, and all the rest? How are you going to save it, I say? By what? By credit? What is credit? To what will credit lead you?” + +![img](https://upload.wikimedia.org/wikipedia/commons/thumb/0/04/%D0%9B%D0%B5%D0%B2%D0%B8%D1%82%D0%B0%D0%BD_%D0%92%D0%B5%D1%87%D0%B5%D1%80_%D0%BF%D0%BE%D1%81%D0%BB%D0%B5_%D0%B4%D0%BE%D0%B6%D0%B4%D1%8F.jpg/1024px-%D0%9B%D0%B5%D0%B2%D0%B8%D1%82%D0%B0%D0%BD_%D0%92%D0%B5%D1%87%D0%B5%D1%80_%D0%BF%D0%BE%D1%81%D0%BB%D0%B5_%D0%B4%D0%BE%D0%B6%D0%B4%D1%8F.jpg) diff --git a/content/ru/first-record.md b/content/ru/first-record.md new file mode 100644 index 0000000..5cd9ef3 --- /dev/null +++ b/content/ru/first-record.md @@ -0,0 +1,8 @@ ++++ +date = '2025-08-01T00:15:49-04:00' +title = 'First Record' ++++ + +— А по вечерам зато откровеннее! По вечерам задушевнее и откровеннее! — с жаром обернулся к нему Лебедев, — простодушнее и определительнее, честнее и почтеннее, и хоть этим я вам и бок подставляю, но наплевать-с; я вас всех вызываю теперь, всех атеистов: чем вы спасете мир и нормальную дорогу ему в чем отыскали, — вы, люди науки, промышленности, ассоциаций, платы заработной и прочего? Чем? Кредитом? Что такое кредит? К чему приведет вас кредит? + +![img](https://upload.wikimedia.org/wikipedia/commons/thumb/0/04/%D0%9B%D0%B5%D0%B2%D0%B8%D1%82%D0%B0%D0%BD_%D0%92%D0%B5%D1%87%D0%B5%D1%80_%D0%BF%D0%BE%D1%81%D0%BB%D0%B5_%D0%B4%D0%BE%D0%B6%D0%B4%D1%8F.jpg/1024px-%D0%9B%D0%B5%D0%B2%D0%B8%D1%82%D0%B0%D0%BD_%D0%92%D0%B5%D1%87%D0%B5%D1%80_%D0%BF%D0%BE%D1%81%D0%BB%D0%B5_%D0%B4%D0%BE%D0%B6%D0%B4%D1%8F.jpg) diff --git a/hugo.toml b/hugo.toml new file mode 100644 index 0000000..1c38480 --- /dev/null +++ b/hugo.toml @@ -0,0 +1,4 @@ +baseURL = 'https://example.org/' +languageCode = 'en-us' + +theme = 'lugo' diff --git a/themes/lugo/README.md b/themes/lugo/README.md new file mode 100644 index 0000000..a39a9e8 --- /dev/null +++ b/themes/lugo/README.md @@ -0,0 +1,21 @@ +# Luke's Hugo Theme + +A simple Hugo theme I plan on using for my personal website, [Based.Cooking](https://based.cooking) and [LandChad.net](https://landchad.net). + +## get started + +```sh +hugo new site new-site +cd new-site +git clone https://github.com/lukesmithxyz/lugo themes/lugo +echo "theme = 'lugo'" >> config.toml +cp themes/lugo/static/style.css static/ +``` + +## stuff + +- Makes one RSS feed for the entire site at `/index.xml` +- Stylesheet is in `/style.css` and includes some important stuff for partials. +- If a post is tagged, links to the tags are placed at the bottom of the post. +- `nextprev.html` adds links to the Next and Previous articles to the bottom of a page. +- `taglist.html` links all tags an article is tagged to for related content. diff --git a/themes/lugo/archetypes/default.md b/themes/lugo/archetypes/default.md new file mode 100644 index 0000000..00e77bd --- /dev/null +++ b/themes/lugo/archetypes/default.md @@ -0,0 +1,6 @@ +--- +title: "{{ replace .Name "-" " " | title }}" +date: {{ .Date }} +draft: true +--- + diff --git a/themes/lugo/config.toml b/themes/lugo/config.toml new file mode 100644 index 0000000..9202927 --- /dev/null +++ b/themes/lugo/config.toml @@ -0,0 +1,26 @@ +title = "Website Name" +baseURL = 'https://example.org' +[languages] +[languages.en] + languageCode = 'en-us' + contentDir = "content/en" + languageName = "English" + +[languages.ru] + languageCode = 'ru-ru' + contentDir = "content/ru" + languageName = "Русский" + +[params] + # "relatedtext" is the text that appears above the tag list at the bottom of pages. + relatedtext = "Related" + favicon = "/favicon.ico" + + #list items + datesinlist = true + authorsinlist = true + + #footer items + nextprev = true + taglist = true + showrss = true diff --git a/themes/lugo/layouts/_default/baseof.html b/themes/lugo/layouts/_default/baseof.html new file mode 100644 index 0000000..2416082 --- /dev/null +++ b/themes/lugo/layouts/_default/baseof.html @@ -0,0 +1,62 @@ + + + + {{ if not .IsHome }}{{ .Title | title }} | {{ end }}{{ .Site.Title }} + + + + {{ with .Site.Params.favicon }}{{ end -}} + + {{ if isset .Params "tags" }}{{ end -}} + + + + + + + + + +
+ {{ if .Site.Menus.main }}{{ partial "nav.html" . }}{{ end -}} + + +
+

{{ block "title" . }}{{ end }}

+
+ {{ block "main" . }} + {{ .Content }} + {{ end }} + {{ if .Param "nextprev" }}{{ partial "nextprev.html" . }}{{ end -}} + {{ if .Param "taglist" }}{{ partial "taglist.html" . }}{{ end -}} +
+
+ + +
+ {{ block "footer" . }} + {{ .Site.BaseURL }} +
+ {{ if eq .Language.Lang "en" }} + 🇬🇧 + 🇷🇺 + {{ else }} + 🇬🇧 + 🇷🇺 + {{ end }} +
+ {{- if .Param "showrss" }} +

+ + RSS Feed + +

The side banners are fragments of Blooming Lilacs by Kiriak Konstantinovich Kostandi

+ {{ end }} + {{ end }} +
+
+ + + + + diff --git a/themes/lugo/layouts/_default/list.html b/themes/lugo/layouts/_default/list.html new file mode 100644 index 0000000..601fc08 --- /dev/null +++ b/themes/lugo/layouts/_default/list.html @@ -0,0 +1,20 @@ +{{ define "title" -}} +{{ .Title | title }} +{{- end }} +{{ define "main" -}} +{{ .Content }} + +{{- end }} diff --git a/themes/lugo/layouts/_default/rss.xml b/themes/lugo/layouts/_default/rss.xml new file mode 100644 index 0000000..38dbe3d --- /dev/null +++ b/themes/lugo/layouts/_default/rss.xml @@ -0,0 +1,26 @@ + + + {{ .Site.Title }} + {{ .Permalink }} + Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{.}} {{ end }}{{ end }}on {{ .Site.Title }} + Hugo -- gohugo.io{{ with .Site.LanguageCode }} + {{.}}{{end}}{{ with .Site.Author.email }} + {{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}}{{ with .Site.Author.email }} + {{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}}{{ with .Site.Copyright }} + {{.}}{{end}}{{ if not .Date.IsZero }} + {{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}{{ end }} + {{ with .OutputFormats.Get "RSS" }} + {{ printf "" .Permalink .MediaType | safeHTML }} + {{ end }} + {{ range .Site.RegularPages }} + + {{ .Title }} + {{ .Permalink }} + {{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }} + {{ with .Site.Author.email }}{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}} + {{ .Permalink }} + {{- .Content | html -}} + + {{ end }} + + diff --git a/themes/lugo/layouts/_default/single.html b/themes/lugo/layouts/_default/single.html new file mode 100644 index 0000000..56c5a11 --- /dev/null +++ b/themes/lugo/layouts/_default/single.html @@ -0,0 +1,3 @@ +{{ define "title" -}} +{{ .Title }} +{{- end }} diff --git a/themes/lugo/layouts/partials/nav.html b/themes/lugo/layouts/partials/nav.html new file mode 100644 index 0000000..a7318fe --- /dev/null +++ b/themes/lugo/layouts/partials/nav.html @@ -0,0 +1,8 @@ + diff --git a/themes/lugo/layouts/partials/nextprev.html b/themes/lugo/layouts/partials/nextprev.html new file mode 100644 index 0000000..099f16d --- /dev/null +++ b/themes/lugo/layouts/partials/nextprev.html @@ -0,0 +1,10 @@ +{{ if or .Next .Prev -}} +
+{{- with .Prev }} +
Previous:
{{.Title}}
+{{ end -}} +{{- with .Next -}} +
Next:
{{.Title}}
+{{ end -}} +
+{{ end -}} diff --git a/themes/lugo/layouts/partials/taglist.html b/themes/lugo/layouts/partials/taglist.html new file mode 100644 index 0000000..1e9fe1d --- /dev/null +++ b/themes/lugo/layouts/partials/taglist.html @@ -0,0 +1,13 @@ + {{- if isset .Params "tags" -}} + {{- $tagsLen := len .Params.tags -}} + {{- if gt $tagsLen 0 -}} +
+ {{- with .Site.Params.relatedtext }}{{ . }}
{{ end -}} + {{- range $k, $v := .Params.tags -}} + {{- $url := printf "/tags/%s" (. | urlize | lower) -}} + {{ . | title }} + {{- if lt $k (sub $tagsLen 1) }} · {{ end -}} + {{- end -}} +
+ {{- end -}} + {{- end }} diff --git a/themes/lugo/layouts/shortcodes/hidvid.html b/themes/lugo/layouts/shortcodes/hidvid.html new file mode 100644 index 0000000..14f592d --- /dev/null +++ b/themes/lugo/layouts/shortcodes/hidvid.html @@ -0,0 +1,10 @@ +
+ Click to reveal video. + +
diff --git a/themes/lugo/layouts/shortcodes/img.html b/themes/lugo/layouts/shortcodes/img.html new file mode 100644 index 0000000..0665f39 --- /dev/null +++ b/themes/lugo/layouts/shortcodes/img.html @@ -0,0 +1,21 @@ + +
+ {{- with .Get "link"}}{{ end -}} + {{.}} + {{- if .Get "link"}}{{ end -}} + {{- with .Get "caption" -}} +
+ {{- . -}} +
+ {{- end -}} +
diff --git a/themes/lugo/layouts/shortcodes/tagcloud.html b/themes/lugo/layouts/shortcodes/tagcloud.html new file mode 100644 index 0000000..0cf0118 --- /dev/null +++ b/themes/lugo/layouts/shortcodes/tagcloud.html @@ -0,0 +1,3 @@ +{{ if isset .Site.Taxonomies "tags" }}{{ if not (eq (len .Site.Taxonomies.tags) 0) }} {{ end }}{{ end }} diff --git a/themes/lugo/layouts/shortcodes/vid.html b/themes/lugo/layouts/shortcodes/vid.html new file mode 100644 index 0000000..4c612fe --- /dev/null +++ b/themes/lugo/layouts/shortcodes/vid.html @@ -0,0 +1,6 @@ + diff --git a/themes/lugo/static/rss.svg b/themes/lugo/static/rss.svg new file mode 100644 index 0000000..dfda038 --- /dev/null +++ b/themes/lugo/static/rss.svg @@ -0,0 +1 @@ + diff --git a/themes/lugo/static/style.css b/themes/lugo/static/style.css new file mode 100644 index 0000000..4a753a4 --- /dev/null +++ b/themes/lugo/static/style.css @@ -0,0 +1,48 @@ +/* Main layout container */ +body { + margin: 0; + padding: 0; + display: flex; + min-height: 100vh; + font-family: Garamond, Baskerville, "Baskerville Old Face", "Hoefler Text", "Times New Roman", serif; +} + +p { + padding: 20px; + line-height: 1.2; + font-size: 20px; +} + +/* Side banners */ +.banner-left { + flex: 1; + background-image: url('./banner-left.jpg'); + background-size: cover; + background-position: center right; +} + +.banner-right { + flex: 1; + background-image: url('./banner-right.jpg'); + background-size: cover; + background-position: center left; +} + +/* Centered content box */ +.content-wrapper { + min-height:20%; + min-width:60%; + max-width:67%; + width: 1000px; /* Fixed width or use max-width */ + padding: 20px; + background: #ffffff; + box-shadow: 0 0 30px rgba(0,0,0,0.9); +} + +/* Language switcher */ +.language-switcher { + text-align: center; + padding: 20px 0; + margin-top: 40px; +} +