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