diff --git a/README.md b/README.md index c902148..103d32e 100644 --- a/README.md +++ b/README.md @@ -2,63 +2,14 @@ The source files for the website. -## Dependencies +# hugo -This site is built using [Hakyll](https://jaspervdj.be/hakyll). -To be able to build and run this, you need to install the following: +- hugo is a static site generator +- to start the development server + - with docker: ```docker run --rm -p 1313:1313 -v ./:/src hugomods/hugo:exts-non-root server -D``` + - local: ```hugo server``` +- to build the website + - with docker: ```docker run --rm -v ./:/src hugomods/hugo:exts-non-root build``` + - local: ```hugo``` -* ghc -* cabal-install -* alex -* happy -* zlib1g-dev -## New post - -To write new posts just invoke `newpost.sh`. This will guide you through the -process. - -After you have written and saved the new post, add the post (you can find it in -`site/posts/`) to the repo, commit and push it. - -## Build and deploy - -### NixOS - -After cloning the repo and changing into the repo directory, -you can invoke - -```bash -nix-shell shell.nix -``` - -to build a shell with -all dependencies in it. After that, you invoke - -```bash -cabal new-run -- chaoszone build && cabal new-run -- chaoszone deploy -``` - -to build the static sites and eploy them in one step. - -### Other \*nix - -After cloning the repo, you change into the directory and invoke - -``` -cabal new-update -``` - -to initialize your cabal package repository list. After that you can run - -```bash -cabal new-run -- chaoszone build && cabal new-run -- chaoszone deploy -``` - -to build the static sites and eploy them in one step. - -## Altering building process - -For altering the building process, you may edit the `src/Main.hs` file. To -actually see your results, contact me at so I can rebuild the -executable for the static site generator. diff --git a/themes/zone2/LICENSE b/themes/zone2/LICENSE new file mode 100644 index 0000000..8aa2645 --- /dev/null +++ b/themes/zone2/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/themes/zone2/README.md b/themes/zone2/README.md new file mode 100644 index 0000000..7cec74e --- /dev/null +++ b/themes/zone2/README.md @@ -0,0 +1,7 @@ +# Theme Name + +## Features + +## Installation + +## Configuration diff --git a/themes/zone2/archetypes/default.md b/themes/zone2/archetypes/default.md new file mode 100644 index 0000000..c6f3fce --- /dev/null +++ b/themes/zone2/archetypes/default.md @@ -0,0 +1,5 @@ ++++ +title = '{{ replace .File.ContentBaseName "-" " " | title }}' +date = {{ .Date }} +draft = true ++++ diff --git a/themes/zone2/assets/css/main.css b/themes/zone2/assets/css/main.css new file mode 100644 index 0000000..166ade9 --- /dev/null +++ b/themes/zone2/assets/css/main.css @@ -0,0 +1,22 @@ +body { + color: #222; + font-family: sans-serif; + line-height: 1.5; + margin: 1rem; + max-width: 768px; +} + +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/themes/zone2/assets/js/main.js b/themes/zone2/assets/js/main.js new file mode 100644 index 0000000..e2aac52 --- /dev/null +++ b/themes/zone2/assets/js/main.js @@ -0,0 +1 @@ +console.log('This site was generated by Hugo.'); diff --git a/themes/zone2/hugo.toml b/themes/zone2/hugo.toml new file mode 100644 index 0000000..8c7d66a --- /dev/null +++ b/themes/zone2/hugo.toml @@ -0,0 +1,28 @@ +baseURL = 'https://example.org/' +languageCode = 'en-us' +title = 'My New Hugo Site' + +[[menus.main]] +name = 'Home' +pageRef = '/' +weight = 10 + +[[menus.main]] +name = 'Members' +pageRef = '' +weight = 20 + +[[menus.main]] +name = 'Projects' +pageRef = '' +weight = 20 + +[[menus.main]] +name = 'Events' +pageRef = '' +weight = 20 + +[module] + [module.hugoVersion] + extended = false + min = "0.116.0" diff --git a/themes/zone2/layouts/404.html b/themes/zone2/layouts/404.html new file mode 100644 index 0000000..9b100d8 --- /dev/null +++ b/themes/zone2/layouts/404.html @@ -0,0 +1,9 @@ +{{ partial "header.html" . }} + +

Page Not Found

+ +

This page doesn't exist.

+ +

Go back to the home page

+ +{{ partial "footer.html" . }} diff --git a/themes/zone2/layouts/_default/list.html b/themes/zone2/layouts/_default/list.html new file mode 100644 index 0000000..b4d94d4 --- /dev/null +++ b/themes/zone2/layouts/_default/list.html @@ -0,0 +1,18 @@ +{{ partial "header.html" . }} + +

{{ .Title }}

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

+ {{ .Title }} +

+ +
+{{ end }} + +{{ partial "footer.html" . }} diff --git a/themes/zone2/layouts/_default/single.html b/themes/zone2/layouts/_default/single.html new file mode 100644 index 0000000..a903ad6 --- /dev/null +++ b/themes/zone2/layouts/_default/single.html @@ -0,0 +1,7 @@ +{{ partial "header.html" . }} + +

{{ .Title }}

+ +{{ .Content }} + +{{ partial "footer.html" . }} diff --git a/themes/zone2/layouts/index.html b/themes/zone2/layouts/index.html new file mode 100644 index 0000000..b9c012e --- /dev/null +++ b/themes/zone2/layouts/index.html @@ -0,0 +1,29 @@ + + + + {{ partial "header.html" . }} + + + + + {{ partial "nav.html" . }} + +
+ +
+

{{ .Title }}

+ + {{ .Content }} +
+ + + + {{ partial "footer.html" . }} +
+ + + + + + + diff --git a/themes/zone2/layouts/partials/footer.html b/themes/zone2/layouts/partials/footer.html new file mode 100644 index 0000000..ca3f4ff --- /dev/null +++ b/themes/zone2/layouts/partials/footer.html @@ -0,0 +1,3 @@ +
+

©{{ dateFormat "2006" now }} {{ .Site.Title }}

+
diff --git a/themes/zone2/layouts/partials/header.html b/themes/zone2/layouts/partials/header.html new file mode 100644 index 0000000..574b6e4 --- /dev/null +++ b/themes/zone2/layouts/partials/header.html @@ -0,0 +1,11 @@ + + + +{{ if not .IsHome }}{{ .Title }} | {{ end }}{{ .Site.Title }} + + + + +{{ with .OutputFormats.Get "rss" -}} {{ printf ` + +` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }} {{ end -}} diff --git a/themes/zone2/layouts/partials/nav.html b/themes/zone2/layouts/partials/nav.html new file mode 100644 index 0000000..c466fef --- /dev/null +++ b/themes/zone2/layouts/partials/nav.html @@ -0,0 +1,12 @@ + diff --git a/themes/zone2/static/css/style.css b/themes/zone2/static/css/style.css new file mode 100644 index 0000000..7a3c2f4 --- /dev/null +++ b/themes/zone2/static/css/style.css @@ -0,0 +1,70 @@ +:root { + --bg-color: #841205; + --hl-color: #A72119; + --menu-font-color: white; + --font-color: #430C08; + --box-bg: #ece2d5; + --main-font: 'Cubellan'; +} + +@font-face { + font-family: 'Cubellan'; + src: url('../font/Cubellan.ttf') format('truetype'); + font-weight: normal; + font-style: normal; +} + +html { + background-color: var(--bg-color); + color: var(--font-color); + font-family: var(--main-font); + font-size: 20pt; +} + +*, *::before, *::after { + box-sizing: border-box; +} + +body { + padding: 0; + margin: 0; + min-height: 100vh; + display: flex; +} + +.site-nav { + border-right: 2px solid var(--box-bg); + +} + +.logo { + display: block; + padding: clamp(1em, 3vw, 3em); + border-bottom: 2px solid var(--box-bg); +} + +.main-menu { + margin: 0; + padding: 0; + list-style: none; +} + +.main-menu > li { + margin: 0; + padding: 0; +} + +.main-menu > li > a { + display: block; + padding: clamp(0.5em, 1.5vw, 1.5em); + color: var(--menu-font-color); + text-decoration: none; + border-bottom: 2px solid var(--box-bg); +} + +.content { + margin-top: 3rem; + border-top: 2px solid var(--box-bg); + padding: clamp(1em, 3vw, 3em); + background-color: var(--box-bg); +} diff --git a/themes/zone2/static/favicon.ico b/themes/zone2/static/favicon.ico new file mode 100644 index 0000000..67f8b77 Binary files /dev/null and b/themes/zone2/static/favicon.ico differ diff --git a/themes/zone2/static/font/Cubellan.ttf b/themes/zone2/static/font/Cubellan.ttf new file mode 100644 index 0000000..0ac914a Binary files /dev/null and b/themes/zone2/static/font/Cubellan.ttf differ diff --git a/themes/zone2/static/img/Chaoszone.svg b/themes/zone2/static/img/Chaoszone.svg new file mode 100644 index 0000000..983a720 --- /dev/null +++ b/themes/zone2/static/img/Chaoszone.svg @@ -0,0 +1,54 @@ + + + + + + + + image/svg+xml + + + + + + + diff --git a/themes/zone2/static/img/Chaoszone_crest.png b/themes/zone2/static/img/Chaoszone_crest.png new file mode 100644 index 0000000..b16b261 Binary files /dev/null and b/themes/zone2/static/img/Chaoszone_crest.png differ diff --git a/themes/zone2/theme.toml b/themes/zone2/theme.toml new file mode 100644 index 0000000..3ba3164 --- /dev/null +++ b/themes/zone2/theme.toml @@ -0,0 +1,31 @@ +name = 'Theme name' +license = 'MIT' +licenselink = 'https://github.com/owner/repo/LICENSE' +description = 'Theme description' + +# The home page of the theme, where the source can be found +homepage = 'https://github.com/owner/repo' + +# 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 multiple authors +authors = [ + {name = 'Name of author', homepage = 'Website of author'}, + {name = 'Name of author', homepage = 'Website of author'} +] + +# If the theme has a single author +[author] + name = 'Your name' + homepage = 'Your website' + +# If porting an existing theme +[original] + author = 'Name of original author' + homepage = 'Website of original author' + repo = 'https://github.com/owner/repo'