first comm
This commit is contained in:
@@ -0,0 +1,3 @@
|
|||||||
|
/public
|
||||||
|
/resources
|
||||||
|
/.hugo_build.lock
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
# Personal Blog (Hugo + re-Terminal + Sveltia CMS)
|
||||||
|
|
||||||
|
This site is preconfigured with:
|
||||||
|
|
||||||
|
- Hugo theme: `github.com/mirus-ua/hugo-theme-re-terminal/v2`
|
||||||
|
- Headless CMS module: `github.com/privatemaker/headless-cms`
|
||||||
|
- CMS engine: `sveltia`
|
||||||
|
|
||||||
|
## Run locally
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /home/chasechimeric/Documents/Code/personal-blog
|
||||||
|
hugo server -D
|
||||||
|
```
|
||||||
|
|
||||||
|
- Blog: `http://localhost:1313/`
|
||||||
|
- CMS: `http://localhost:1313/admin/`
|
||||||
|
|
||||||
|
## Required personalization
|
||||||
|
|
||||||
|
Edit `hugo.yaml` and replace:
|
||||||
|
|
||||||
|
1. `baseURL: https://example.org/` with your real domain.
|
||||||
|
2. `params.headless_cms.backend.repo: REPLACE_WITH_OWNER/REPLACE_WITH_REPO` with your GitHub repo.
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
- The project uses Hugo Modules (`go.mod`/`go.sum` already initialized).
|
||||||
|
- A local RSS template override is included for compatibility with current Hugo releases.
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
date: '{{ .Date }}'
|
||||||
|
draft: true
|
||||||
|
title: '{{ replace .File.ContentBaseName "-" " " | title }}'
|
||||||
|
---
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
title: About
|
||||||
|
date: 2026-04-26T00:00:00-07:00
|
||||||
|
draft: false
|
||||||
|
---
|
||||||
|
|
||||||
|
Hi, I am Chase.
|
||||||
|
|
||||||
|
This is my personal blog built with Hugo, re-Terminal, and Sveltia CMS.
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
---
|
||||||
|
title: Content Admin
|
||||||
|
layout: headless-cms
|
||||||
|
---
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
---
|
||||||
|
title: Posts
|
||||||
|
---
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
---
|
||||||
|
title: Hello World
|
||||||
|
date: 2026-04-26T00:00:00-07:00
|
||||||
|
draft: false
|
||||||
|
author: Chase Chimeric
|
||||||
|
description: First post on the new blog.
|
||||||
|
tags:
|
||||||
|
- hugo
|
||||||
|
- blog
|
||||||
|
---
|
||||||
|
|
||||||
|
This is the first post on the new personal site.
|
||||||
|
|
||||||
|
If you are reading this, the theme and content pipeline are working.
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
module github.com/chasechimeric/personal-blog
|
||||||
|
|
||||||
|
go 1.26.2
|
||||||
|
|
||||||
|
require (
|
||||||
|
github.com/mirus-ua/hugo-theme-re-terminal/v2 v2.4.3 // indirect
|
||||||
|
github.com/privatemaker/headless-cms v0.1.2 // indirect
|
||||||
|
)
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
github.com/mirus-ua/hugo-theme-re-terminal/v2 v2.4.3 h1:gW7ZbSzwbPAQQKhAEC62TWecEOmHwv23NoXEyx/D0og=
|
||||||
|
github.com/mirus-ua/hugo-theme-re-terminal/v2 v2.4.3/go.mod h1:mcOfSJ/BI1p/yQ8nMAUD0gqVOK4Wo/Biw3ZHFy45NuM=
|
||||||
|
github.com/privatemaker/headless-cms v0.1.2 h1:uLCiN3k3Tr48WzOeWsIJ8S7TXOoMoOrz4KT2V7hisso=
|
||||||
|
github.com/privatemaker/headless-cms v0.1.2/go.mod h1:ZcHkPZzL9yCsBdmn9FpoIW35snTyj1bDOfqT0ZFJoZE=
|
||||||
@@ -0,0 +1,126 @@
|
|||||||
|
baseURL: https://example.org/
|
||||||
|
languageCode: en-us
|
||||||
|
title: Chase Chimeric
|
||||||
|
enableRobotsTXT: true
|
||||||
|
|
||||||
|
pagination:
|
||||||
|
pagerSize: 6
|
||||||
|
|
||||||
|
taxonomies:
|
||||||
|
tag: tags
|
||||||
|
category: categories
|
||||||
|
|
||||||
|
outputFormats:
|
||||||
|
HeadlessCMSConfig:
|
||||||
|
baseName: headless-cms-config
|
||||||
|
isHTML: false
|
||||||
|
notAlternative: true
|
||||||
|
mediaType: application/yaml
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
home:
|
||||||
|
- HTML
|
||||||
|
- RSS
|
||||||
|
- HeadlessCMSConfig
|
||||||
|
|
||||||
|
services:
|
||||||
|
rss:
|
||||||
|
limit: 25
|
||||||
|
|
||||||
|
menu:
|
||||||
|
main:
|
||||||
|
- identifier: posts
|
||||||
|
name: Posts
|
||||||
|
url: /posts/
|
||||||
|
weight: 10
|
||||||
|
- identifier: about
|
||||||
|
name: About
|
||||||
|
url: /about/
|
||||||
|
weight: 20
|
||||||
|
|
||||||
|
module:
|
||||||
|
imports:
|
||||||
|
- path: github.com/mirus-ua/hugo-theme-re-terminal/v2
|
||||||
|
- path: github.com/privatemaker/headless-cms
|
||||||
|
|
||||||
|
params:
|
||||||
|
contentTypeName: posts
|
||||||
|
themeColor: blue
|
||||||
|
showMenuItems: 3
|
||||||
|
showLanguageSelector: false
|
||||||
|
fullWidthTheme: false
|
||||||
|
centerTheme: true
|
||||||
|
autoCover: true
|
||||||
|
readingTime: true
|
||||||
|
Toc: true
|
||||||
|
TocTitle: Table of Contents
|
||||||
|
|
||||||
|
logo:
|
||||||
|
logoText: Chase Chimeric
|
||||||
|
logoHomeLink: /
|
||||||
|
|
||||||
|
author:
|
||||||
|
name: Chase Chimeric
|
||||||
|
email: you@example.com
|
||||||
|
|
||||||
|
headless_cms:
|
||||||
|
engine: sveltia
|
||||||
|
publish_mode: editorial_workflow
|
||||||
|
media_folder: static/uploads
|
||||||
|
public_folder: /uploads
|
||||||
|
backend:
|
||||||
|
name: github
|
||||||
|
repo: ChaseChimeric/personal-blog
|
||||||
|
branch: main
|
||||||
|
collections:
|
||||||
|
- name: posts
|
||||||
|
label: Posts
|
||||||
|
label_singular: Post
|
||||||
|
folder: content/posts
|
||||||
|
create: true
|
||||||
|
slug: "{{year}}-{{month}}-{{day}}-{{slug}}"
|
||||||
|
extension: md
|
||||||
|
format: yaml-frontmatter
|
||||||
|
preview_path: posts/{{slug}}
|
||||||
|
fields:
|
||||||
|
- label: Title
|
||||||
|
name: title
|
||||||
|
widget: string
|
||||||
|
- label: Date
|
||||||
|
name: date
|
||||||
|
widget: datetime
|
||||||
|
- label: Draft
|
||||||
|
name: draft
|
||||||
|
widget: boolean
|
||||||
|
default: true
|
||||||
|
required: false
|
||||||
|
- label: Author
|
||||||
|
name: author
|
||||||
|
widget: string
|
||||||
|
required: false
|
||||||
|
- label: Description
|
||||||
|
name: description
|
||||||
|
widget: text
|
||||||
|
required: false
|
||||||
|
- label: Tags
|
||||||
|
name: tags
|
||||||
|
widget: list
|
||||||
|
required: false
|
||||||
|
- label: Body
|
||||||
|
name: body
|
||||||
|
widget: markdown
|
||||||
|
|
||||||
|
languages:
|
||||||
|
en:
|
||||||
|
languageName: English
|
||||||
|
params:
|
||||||
|
title: Chase Chimeric
|
||||||
|
subtitle: Notes on software, systems, and experiments
|
||||||
|
owner: Chase Chimeric
|
||||||
|
menuMore: Show more
|
||||||
|
readMore: Read more
|
||||||
|
readOtherPosts: Read other posts
|
||||||
|
newerPosts: Newer posts
|
||||||
|
olderPosts: Older posts
|
||||||
|
minuteReadingTime: min read
|
||||||
|
words: words
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
{{- $pctx := . -}}
|
||||||
|
{{- if .IsHome -}}{{ $pctx = .Site }}{{- end -}}
|
||||||
|
{{- $pages := slice -}}
|
||||||
|
{{- if or $.IsHome $.IsSection -}}
|
||||||
|
{{- $pages = $pctx.RegularPages -}}
|
||||||
|
{{- else -}}
|
||||||
|
{{- $pages = $pctx.Pages -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- $limit := .Site.Config.Services.RSS.Limit -}}
|
||||||
|
{{- if ge $limit 1 -}}
|
||||||
|
{{- $pages = $pages | first $limit -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- $authorEmail := "" -}}
|
||||||
|
{{- $authorName := "" -}}
|
||||||
|
{{- with .Site.Params.author -}}
|
||||||
|
{{- with .email -}}{{- $authorEmail = . -}}{{- end -}}
|
||||||
|
{{- with .name -}}{{- $authorName = . -}}{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>" | safeHTML }}
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
|
||||||
|
<channel>
|
||||||
|
<title>{{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{ . }} on {{ end }}{{ .Site.Title }}{{ end }}</title>
|
||||||
|
<link>{{ .Permalink }}</link>
|
||||||
|
<description>Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{ . }} {{ end }}{{ end }}on {{ .Site.Title }}</description>
|
||||||
|
<generator>Hugo -- gohugo.io</generator>{{ with .Site.LanguageCode }}
|
||||||
|
<language>{{ . }}</language>{{ end }}
|
||||||
|
{{- if $authorEmail }}
|
||||||
|
<managingEditor>{{ $authorEmail }}{{ with $authorName }} ({{ . }}){{ end }}</managingEditor>
|
||||||
|
<webMaster>{{ $authorEmail }}{{ with $authorName }} ({{ . }}){{ end }}</webMaster>
|
||||||
|
{{- end }}{{ with .Site.Copyright }}
|
||||||
|
<copyright>{{ . }}</copyright>{{ end }}{{ if not .Date.IsZero }}
|
||||||
|
<lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ end }}
|
||||||
|
{{- with .OutputFormats.Get "RSS" -}}
|
||||||
|
{{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }}
|
||||||
|
{{- end -}}
|
||||||
|
{{ range $pages }}
|
||||||
|
<item>
|
||||||
|
<title>{{ .Title }}</title>
|
||||||
|
<link>{{ .Permalink }}</link>
|
||||||
|
<pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
|
||||||
|
{{- if $authorEmail }}<author>{{ $authorEmail }}{{ with $authorName }} ({{ . }}){{ end }}</author>{{ end }}
|
||||||
|
<guid>{{ .Permalink }}</guid>
|
||||||
|
<description>{{ .Summary | html }}</description>
|
||||||
|
<content>{{ .Content | html }}</content>
|
||||||
|
</item>
|
||||||
|
{{ end }}
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
|
||||||
Reference in New Issue
Block a user