This commit is contained in:
marc-kbpm 2022-12-02 19:28:05 +01:00
parent a4d6ab14ff
commit 4286641ec6
49 changed files with 2197 additions and 0 deletions

42
.gitignore vendored Normal file
View File

@ -0,0 +1,42 @@
# Ignore docs files
/_site/
# Hugo files
/resources/
/.hugo_build.lock
# Numerous always-ignore extensions
*.diff
*.err
*.log
*.orig
*.rej
*.swo
*.swp
*.vi
*.zip
*~
# OS or Editor folders
._*
.cache
.DS_Store
.idea
.project
.settings
.tmproj
*.esproj
*.sublime-project
*.sublime-workspace
nbproject
Thumbs.db
/.vscode/
# Local Netlify folder
.netlify
# Komodo
.komodotools
*.komodoproject
# Folders to ignore
/js/coverage/
/node_modules/

28
README.md Normal file
View File

@ -0,0 +1,28 @@
# README
This project uses the [Hugo](https://gohugo.io/) framework and [Tailwind](https://tailwindcss.com/) css for as CSS library.
## For local development
**Hugo**
See the Hugo development commands https://gohugo.io/getting-started/usage/#develop-and-test-your-site
**Tailwind**
As (for now) we are not using any node npm packages for the frontend that's why we are using the [Standalone CLI](https://tailwindcss.com/blog/standalone-cli) of Tailwind.
If it turns out we need more packages we might switch to npm, but for now we are trying to avoid it.
To use Tailwind Standalone CLI please follow [these instructions](https://tailwindcss.com/blog/standalone-cli#get-started).
It depends on your OS what executable you need to download.
(If we need to switch to NPM checkout this setup: https://github.com/arthaud-proust-pro/hugo-tailwind)
**All together**
There is a bash script to run all local development scripts.
You might need to give the file permission first with `chmod +x ./dev.hs`.
Then run `bash dev.hs`.
This fires up the local Hugo server and Tailwind.

6
archetypes/default.md Normal file
View File

@ -0,0 +1,6 @@
---
title: "{{ replace .Name "-" " " | title }}"
date: {{ .Date }}
draft: true
---

File diff suppressed because it is too large Load Diff

61
assets/css/styles.css Normal file
View File

@ -0,0 +1,61 @@
/* TailwindCSS base styles */
/* see https://tailwindcss.com/docs/functions-and-directives#tailwind */
@tailwind base;
@tailwind components;
@tailwind utilities;
@tailwind variants;
/* FONT */
/* inter-regular - latin */
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 400;
src: url('/fonts/inter-v12-latin-regular.eot'); /* IE9 Compat Modes */
src: local(''),
url('/fonts/inter-v12-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('/fonts/inter-v12-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
url('/fonts/inter-v12-latin-regular.woff') format('woff'), /* Modern Browsers */
url('/fonts/inter-v12-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
url('/fonts/inter-v12-latin-regular.svg#Inter') format('svg'); /* Legacy iOS */
}
/* inter-500 - latin */
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 500;
src: url('/fonts/inter-v12-latin-500.eot'); /* IE9 Compat Modes */
src: local(''),
url('/fonts/inter-v12-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('/fonts/inter-v12-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
url('/fonts/inter-v12-latin-500.woff') format('woff'), /* Modern Browsers */
url('/fonts/inter-v12-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
url('/fonts/inter-v12-latin-500.svg#Inter') format('svg'); /* Legacy iOS */
}
/* Site Specific */
/* put site specific css styles here using the @layer directive */
/* see https://tailwindcss.com/docs/functions-and-directives#layer */
@layer components {
.welcome-headline {
@apply border-r-4;
}
}
@layer base {
html {
font-family: Inter;
font-weight: 400;
background-color: red !important;
}
h1, h2, h3, h4, h5, h6 {
font-family: Inter;
font-weight: 500;
}
#TableOfContents li {
padding-bottom: 14px;
}
}

32
config.toml Normal file
View File

@ -0,0 +1,32 @@
baseURL = 'http://localhost:1313/'
languageCode = 'en-us'
title = 'My New Hugo Site'
theme = "main-theme"
paginate = 4
# watchIgnoreFiles = ["assets/css/styles.css"]
[menu]
[[menu.main]]
identifier = 'about'
name = 'About'
pageref = '/about/'
url = '/about/'
weight = 1
[[menu.main]]
identifier = 'blog'
name = 'Blog'
pageref = '/blog/'
url = '/blog/'
weight = 2
[[menu.main]]
identifier = 'development'
name = 'Development'
pageref = '/#/'
url = '/#/'
weight = 3
[[menu.main]]
identifier = 'documentation'
name = 'Documentation'
pageref = '/projects/channeler'
url = '/projects/channeler'
weight = 4

4
content/_index.md Normal file
View File

@ -0,0 +1,4 @@
---
title: "Homepage"
---
index file

4
content/about.md Normal file
View File

@ -0,0 +1,4 @@
---
type: "page"
layout: "about"
---

0
content/blog/_index.md Normal file
View File

View File

@ -0,0 +1,13 @@
---
title: "My First Post copy announcements"
date: 2022-11-23T20:45:49+02:00
draft: false
categories: ['announcements']
tags: ['test']
---
Blog pour-over narwhal cray pickled swag vinyl ethical cloud bread VHS before they sold out meditation. Swag vape banh mi before they sold out, keffiyeh kale chips snackwave forage synth kogi. Plaid stumptown wolf paleo lo-fi tattooed. Authentic cloud bread vexillologist adaptogen dreamcatcher shabby chic vegan austin. Pitchfork wayfarers messenger bag tumblr meh selfies actually snackwave roof party normcore. Lo-fi actually next level direct trade semiotics.
PBR&B salvia umami, tumblr tumeric synth pork belly tattooed. Fingerstache try-hard tbh godard vexillologist helvetica meditation quinoa literally austin butcher bitters edison bulb man braid mustache. Twee live-edge bitters jean shorts you probably haven't heard of them man bun banjo. Yr meditation hella hashtag coloring book.
Paleo iceland raclette vaporware pork belly pug hexagon banjo gastropub occupy actually. Ennui truffaut viral microdosing bushwick chia flannel actually succulents irony. Pop-up glossier church-key selvage brunch humblebrag tumblr stumptown. Copper mug microdosing banjo, YOLO shaman kombucha before they sold out. Cardigan art party biodiesel messenger bag actually DIY. Craft beer farm-to-table kitsch, whatever slow-carb meh intelligentsia copper mug butcher cardigan truffaut af flannel snackwave trust fund.

View File

@ -0,0 +1,12 @@
---
title: "My First Post copy announcements"
date: 2022-11-13T20:45:49+02:00
draft: false
categories: ['announcements']
---
Blog pour-over narwhal cray pickled swag vinyl ethical cloud bread VHS before they sold out meditation. Swag vape banh mi before they sold out, keffiyeh kale chips snackwave forage synth kogi. Plaid stumptown wolf paleo lo-fi tattooed. Authentic cloud bread vexillologist adaptogen dreamcatcher shabby chic vegan austin. Pitchfork wayfarers messenger bag tumblr meh selfies actually snackwave roof party normcore. Lo-fi actually next level direct trade semiotics.
PBR&B salvia umami, tumblr tumeric synth pork belly tattooed. Fingerstache try-hard tbh godard vexillologist helvetica meditation quinoa literally austin butcher bitters edison bulb man braid mustache. Twee live-edge bitters jean shorts you probably haven't heard of them man bun banjo. Yr meditation hella hashtag coloring book.
Paleo iceland raclette vaporware pork belly pug hexagon banjo gastropub occupy actually. Ennui truffaut viral microdosing bushwick chia flannel actually succulents irony. Pop-up glossier church-key selvage brunch humblebrag tumblr stumptown. Copper mug microdosing banjo, YOLO shaman kombucha before they sold out. Cardigan art party biodiesel messenger bag actually DIY. Craft beer farm-to-table kitsch, whatever slow-carb meh intelligentsia copper mug butcher cardigan truffaut af flannel snackwave trust fund.

View File

@ -0,0 +1,13 @@
---
title: "My First Post copy announcements"
date: 2022-11-11T20:45:49+02:00
draft: false
categories: ['announcements']
tags: ['test']
---
Blog pour-over narwhal cray pickled swag vinyl ethical cloud bread VHS before they sold out meditation. Swag vape banh mi before they sold out, keffiyeh kale chips snackwave forage synth kogi. Plaid stumptown wolf paleo lo-fi tattooed. Authentic cloud bread vexillologist adaptogen dreamcatcher shabby chic vegan austin. Pitchfork wayfarers messenger bag tumblr meh selfies actually snackwave roof party normcore. Lo-fi actually next level direct trade semiotics.
PBR&B salvia umami, tumblr tumeric synth pork belly tattooed. Fingerstache try-hard tbh godard vexillologist helvetica meditation quinoa literally austin butcher bitters edison bulb man braid mustache. Twee live-edge bitters jean shorts you probably haven't heard of them man bun banjo. Yr meditation hella hashtag coloring book.
Paleo iceland raclette vaporware pork belly pug hexagon banjo gastropub occupy actually. Ennui truffaut viral microdosing bushwick chia flannel actually succulents irony. Pop-up glossier church-key selvage brunch humblebrag tumblr stumptown. Copper mug microdosing banjo, YOLO shaman kombucha before they sold out. Cardigan art party biodiesel messenger bag actually DIY. Craft beer farm-to-table kitsch, whatever slow-carb meh intelligentsia copper mug butcher cardigan truffaut af flannel snackwave trust fund.

View File

@ -0,0 +1,13 @@
---
title: "My First Post copy announcements"
date: 2022-11-19T20:45:49+02:00
draft: false
categories: ['announcements']
tags: ['test']
---
Blog pour-over narwhal cray pickled swag vinyl ethical cloud bread VHS before they sold out meditation. Swag vape banh mi before they sold out, keffiyeh kale chips snackwave forage synth kogi. Plaid stumptown wolf paleo lo-fi tattooed. Authentic cloud bread vexillologist adaptogen dreamcatcher shabby chic vegan austin. Pitchfork wayfarers messenger bag tumblr meh selfies actually snackwave roof party normcore. Lo-fi actually next level direct trade semiotics.
PBR&B salvia umami, tumblr tumeric synth pork belly tattooed. Fingerstache try-hard tbh godard vexillologist helvetica meditation quinoa literally austin butcher bitters edison bulb man braid mustache. Twee live-edge bitters jean shorts you probably haven't heard of them man bun banjo. Yr meditation hella hashtag coloring book.
Paleo iceland raclette vaporware pork belly pug hexagon banjo gastropub occupy actually. Ennui truffaut viral microdosing bushwick chia flannel actually succulents irony. Pop-up glossier church-key selvage brunch humblebrag tumblr stumptown. Copper mug microdosing banjo, YOLO shaman kombucha before they sold out. Cardigan art party biodiesel messenger bag actually DIY. Craft beer farm-to-table kitsch, whatever slow-carb meh intelligentsia copper mug butcher cardigan truffaut af flannel snackwave trust fund.

View File

@ -0,0 +1,13 @@
---
title: "My First Post copy announcements"
date: 2022-11-18T20:45:49+02:00
draft: false
categories: ['announcements']
tags: ['test']
---
Blog pour-over narwhal cray pickled swag vinyl ethical cloud bread VHS before they sold out meditation. Swag vape banh mi before they sold out, keffiyeh kale chips snackwave forage synth kogi. Plaid stumptown wolf paleo lo-fi tattooed. Authentic cloud bread vexillologist adaptogen dreamcatcher shabby chic vegan austin. Pitchfork wayfarers messenger bag tumblr meh selfies actually snackwave roof party normcore. Lo-fi actually next level direct trade semiotics.
PBR&B salvia umami, tumblr tumeric synth pork belly tattooed. Fingerstache try-hard tbh godard vexillologist helvetica meditation quinoa literally austin butcher bitters edison bulb man braid mustache. Twee live-edge bitters jean shorts you probably haven't heard of them man bun banjo. Yr meditation hella hashtag coloring book.
Paleo iceland raclette vaporware pork belly pug hexagon banjo gastropub occupy actually. Ennui truffaut viral microdosing bushwick chia flannel actually succulents irony. Pop-up glossier church-key selvage brunch humblebrag tumblr stumptown. Copper mug microdosing banjo, YOLO shaman kombucha before they sold out. Cardigan art party biodiesel messenger bag actually DIY. Craft beer farm-to-table kitsch, whatever slow-carb meh intelligentsia copper mug butcher cardigan truffaut af flannel snackwave trust fund.

View File

@ -0,0 +1,13 @@
---
title: "My First Post copy announcements"
date: 2022-11-17T20:45:49+02:00
draft: false
categories: ['announcements']
tags: ['test']
---
Blog pour-over narwhal cray pickled swag vinyl ethical cloud bread VHS before they sold out meditation. Swag vape banh mi before they sold out, keffiyeh kale chips snackwave forage synth kogi. Plaid stumptown wolf paleo lo-fi tattooed. Authentic cloud bread vexillologist adaptogen dreamcatcher shabby chic vegan austin. Pitchfork wayfarers messenger bag tumblr meh selfies actually snackwave roof party normcore. Lo-fi actually next level direct trade semiotics.
PBR&B salvia umami, tumblr tumeric synth pork belly tattooed. Fingerstache try-hard tbh godard vexillologist helvetica meditation quinoa literally austin butcher bitters edison bulb man braid mustache. Twee live-edge bitters jean shorts you probably haven't heard of them man bun banjo. Yr meditation hella hashtag coloring book.
Paleo iceland raclette vaporware pork belly pug hexagon banjo gastropub occupy actually. Ennui truffaut viral microdosing bushwick chia flannel actually succulents irony. Pop-up glossier church-key selvage brunch humblebrag tumblr stumptown. Copper mug microdosing banjo, YOLO shaman kombucha before they sold out. Cardigan art party biodiesel messenger bag actually DIY. Craft beer farm-to-table kitsch, whatever slow-carb meh intelligentsia copper mug butcher cardigan truffaut af flannel snackwave trust fund.

View File

@ -0,0 +1,13 @@
---
title: "My First Post copy announcements"
date: 2022-11-16T20:45:49+02:00
draft: false
categories: ['announcements']
tags: ['test']
---
Blog pour-over narwhal cray pickled swag vinyl ethical cloud bread VHS before they sold out meditation. Swag vape banh mi before they sold out, keffiyeh kale chips snackwave forage synth kogi. Plaid stumptown wolf paleo lo-fi tattooed. Authentic cloud bread vexillologist adaptogen dreamcatcher shabby chic vegan austin. Pitchfork wayfarers messenger bag tumblr meh selfies actually snackwave roof party normcore. Lo-fi actually next level direct trade semiotics.
PBR&B salvia umami, tumblr tumeric synth pork belly tattooed. Fingerstache try-hard tbh godard vexillologist helvetica meditation quinoa literally austin butcher bitters edison bulb man braid mustache. Twee live-edge bitters jean shorts you probably haven't heard of them man bun banjo. Yr meditation hella hashtag coloring book.
Paleo iceland raclette vaporware pork belly pug hexagon banjo gastropub occupy actually. Ennui truffaut viral microdosing bushwick chia flannel actually succulents irony. Pop-up glossier church-key selvage brunch humblebrag tumblr stumptown. Copper mug microdosing banjo, YOLO shaman kombucha before they sold out. Cardigan art party biodiesel messenger bag actually DIY. Craft beer farm-to-table kitsch, whatever slow-carb meh intelligentsia copper mug butcher cardigan truffaut af flannel snackwave trust fund.

View File

@ -0,0 +1,12 @@
---
title: "My First Post copy announcements"
date: 2022-10-15T20:45:49+02:00
draft: false
categories: ['announcements']
---
Blog pour-over narwhal cray pickled swag vinyl ethical cloud bread VHS before they sold out meditation. Swag vape banh mi before they sold out, keffiyeh kale chips snackwave forage synth kogi. Plaid stumptown wolf paleo lo-fi tattooed. Authentic cloud bread vexillologist adaptogen dreamcatcher shabby chic vegan austin. Pitchfork wayfarers messenger bag tumblr meh selfies actually snackwave roof party normcore. Lo-fi actually next level direct trade semiotics.
PBR&B salvia umami, tumblr tumeric synth pork belly tattooed. Fingerstache try-hard tbh godard vexillologist helvetica meditation quinoa literally austin butcher bitters edison bulb man braid mustache. Twee live-edge bitters jean shorts you probably haven't heard of them man bun banjo. Yr meditation hella hashtag coloring book.
Paleo iceland raclette vaporware pork belly pug hexagon banjo gastropub occupy actually. Ennui truffaut viral microdosing bushwick chia flannel actually succulents irony. Pop-up glossier church-key selvage brunch humblebrag tumblr stumptown. Copper mug microdosing banjo, YOLO shaman kombucha before they sold out. Cardigan art party biodiesel messenger bag actually DIY. Craft beer farm-to-table kitsch, whatever slow-carb meh intelligentsia copper mug butcher cardigan truffaut af flannel snackwave trust fund.

View File

@ -0,0 +1,12 @@
---
title: "My First Post copy announcements"
date: 2022-09-15T20:45:49+02:00
draft: false
categories: ['announcements']
---
Blog pour-over narwhal cray pickled swag vinyl ethical cloud bread VHS before they sold out meditation. Swag vape banh mi before they sold out, keffiyeh kale chips snackwave forage synth kogi. Plaid stumptown wolf paleo lo-fi tattooed. Authentic cloud bread vexillologist adaptogen dreamcatcher shabby chic vegan austin. Pitchfork wayfarers messenger bag tumblr meh selfies actually snackwave roof party normcore. Lo-fi actually next level direct trade semiotics.
PBR&B salvia umami, tumblr tumeric synth pork belly tattooed. Fingerstache try-hard tbh godard vexillologist helvetica meditation quinoa literally austin butcher bitters edison bulb man braid mustache. Twee live-edge bitters jean shorts you probably haven't heard of them man bun banjo. Yr meditation hella hashtag coloring book.
Paleo iceland raclette vaporware pork belly pug hexagon banjo gastropub occupy actually. Ennui truffaut viral microdosing bushwick chia flannel actually succulents irony. Pop-up glossier church-key selvage brunch humblebrag tumblr stumptown. Copper mug microdosing banjo, YOLO shaman kombucha before they sold out. Cardigan art party biodiesel messenger bag actually DIY. Craft beer farm-to-table kitsch, whatever slow-carb meh intelligentsia copper mug butcher cardigan truffaut af flannel snackwave trust fund.

View File

@ -0,0 +1,12 @@
---
title: "My First Post copy copy Dev diary"
date: 2022-08-18T20:45:49+01:00
draft: false
categories: ['Dev diary']
---
Blog pour-over narwhal cray pickled swag vinyl ethical cloud bread VHS before they sold out meditation. Swag vape banh mi before they sold out, keffiyeh kale chips snackwave forage synth kogi. Plaid stumptown wolf paleo lo-fi tattooed. Authentic cloud bread vexillologist adaptogen dreamcatcher shabby chic vegan austin. Pitchfork wayfarers messenger bag tumblr meh selfies actually snackwave roof party normcore. Lo-fi actually next level direct trade semiotics.
PBR&B salvia umami, tumblr tumeric synth pork belly tattooed. Fingerstache try-hard tbh godard vexillologist helvetica meditation quinoa literally austin butcher bitters edison bulb man braid mustache. Twee live-edge bitters jean shorts you probably haven't heard of them man bun banjo. Yr meditation hella hashtag coloring book.
Paleo iceland raclette vaporware pork belly pug hexagon banjo gastropub occupy actually. Ennui truffaut viral microdosing bushwick chia flannel actually succulents irony. Pop-up glossier church-key selvage brunch humblebrag tumblr stumptown. Copper mug microdosing banjo, YOLO shaman kombucha before they sold out. Cardigan art party biodiesel messenger bag actually DIY. Craft beer farm-to-table kitsch, whatever slow-carb meh intelligentsia copper mug butcher cardigan truffaut af flannel snackwave trust fund.

View File

@ -0,0 +1,12 @@
---
title: "My First Post copy announcements"
date: 2022-06-15T20:45:49+02:00
draft: false
categories: ['Dev diary']
---
Blog pour-over narwhal cray pickled swag vinyl ethical cloud bread VHS before they sold out meditation. Swag vape banh mi before they sold out, keffiyeh kale chips snackwave forage synth kogi. Plaid stumptown wolf paleo lo-fi tattooed. Authentic cloud bread vexillologist adaptogen dreamcatcher shabby chic vegan austin. Pitchfork wayfarers messenger bag tumblr meh selfies actually snackwave roof party normcore. Lo-fi actually next level direct trade semiotics.
PBR&B salvia umami, tumblr tumeric synth pork belly tattooed. Fingerstache try-hard tbh godard vexillologist helvetica meditation quinoa literally austin butcher bitters edison bulb man braid mustache. Twee live-edge bitters jean shorts you probably haven't heard of them man bun banjo. Yr meditation hella hashtag coloring book.
Paleo iceland raclette vaporware pork belly pug hexagon banjo gastropub occupy actually. Ennui truffaut viral microdosing bushwick chia flannel actually succulents irony. Pop-up glossier church-key selvage brunch humblebrag tumblr stumptown. Copper mug microdosing banjo, YOLO shaman kombucha before they sold out. Cardigan art party biodiesel messenger bag actually DIY. Craft beer farm-to-table kitsch, whatever slow-carb meh intelligentsia copper mug butcher cardigan truffaut af flannel snackwave trust fund.

View File

@ -0,0 +1,12 @@
---
title: "My First Post announcements"
date: 2022-01-15T20:45:49+01:00
draft: false
categories: ['Dev diary']
---
Blog pour-over narwhal cray pickled swag vinyl ethical cloud bread VHS before they sold out meditation. Swag vape banh mi before they sold out, keffiyeh kale chips snackwave forage synth kogi. Plaid stumptown wolf paleo lo-fi tattooed. Authentic cloud bread vexillologist adaptogen dreamcatcher shabby chic vegan austin. Pitchfork wayfarers messenger bag tumblr meh selfies actually snackwave roof party normcore. Lo-fi actually next level direct trade semiotics.
PBR&B salvia umami, tumblr tumeric synth pork belly tattooed. Fingerstache try-hard tbh godard vexillologist helvetica meditation quinoa literally austin butcher bitters edison bulb man braid mustache. Twee live-edge bitters jean shorts you probably haven't heard of them man bun banjo. Yr meditation hella hashtag coloring book.
Paleo iceland raclette vaporware pork belly pug hexagon banjo gastropub occupy actually. Ennui truffaut viral microdosing bushwick chia flannel actually succulents irony. Pop-up glossier church-key selvage brunch humblebrag tumblr stumptown. Copper mug microdosing banjo, YOLO shaman kombucha before they sold out. Cardigan art party biodiesel messenger bag actually DIY. Craft beer farm-to-table kitsch, whatever slow-carb meh intelligentsia copper mug butcher cardigan truffaut af flannel snackwave trust fund.

View File

View File

@ -0,0 +1,19 @@
---
title: Channeler
---
## Introduction
Sed ac pharetra metus. Pellentesque varius accumsan orci, ullamcorper ultrices nulla maximus eget. Nunc vestibulum pulvinar arcu, in aliquam augue eleifend nec. Donec turpis erat, varius non enim ac, pharetra eleifend ante. Vivamus malesuada nec felis id auctor. Duis mollis sed urna eget ultrices. Nunc feugiat dolor nisi, sit amet condimentum ante placerat id. Maecenas nec sem pellentesque, venenatis nisl vitae, rhoncus nunc. Praesent fringilla vulputate magna eget imperdiet. Cras ipsum nibh, convallis sed pellentesque non, euismod at sem. Fusce semper tincidunt nisl. Suspendisse vel turpis libero. Ut egestas porta orci nec rhoncus. Aliquam varius diam non mauris commodo dapibus. Quisque imperdiet auctor ultrices.
## Frequently asked questions
Sed ac pharetra metus. Pellentesque varius accumsan orci, ullamcorper ultrices nulla maximus eget. Nunc vestibulum pulvinar arcu, in aliquam augue eleifend nec. Donec turpis erat, varius non enim ac, pharetra eleifend ante. Vivamus malesuada nec felis id auctor. Duis mollis sed urna eget ultrices.
## Project strategy
Sed ac pharetra metus. Pellentesque varius accumsan orci, ullamcorper ultrices nulla maximus eget. Nunc vestibulum pulvinar arcu, in aliquam augue eleifend nec. Donec turpis erat, varius non enim ac, pharetra eleifend ante. Vivamus malesuada nec felis id auctor. Duis mollis sed urna eget ultrices.
## Managed hosting
Sed ac pharetra metus. Pellentesque varius accumsan orci, ullamcorper ultrices nulla maximus eget. Nunc vestibulum pulvinar arcu, in aliquam augue eleifend nec. Donec turpis erat, varius non enim ac, pharetra eleifend ante. Vivamus malesuada nec felis id auctor. Duis mollis sed urna eget ultrices.

View File

@ -0,0 +1,19 @@
---
title: Liberate
---
## Introduction
Sed ac pharetra metus. Pellentesque varius accumsan orci, ullamcorper ultrices nulla maximus eget. Nunc vestibulum pulvinar arcu, in aliquam augue eleifend nec. Donec turpis erat, varius non enim ac, pharetra eleifend ante. Vivamus malesuada nec felis id auctor. Duis mollis sed urna eget ultrices. Nunc feugiat dolor nisi, sit amet condimentum ante placerat id. Maecenas nec sem pellentesque, venenatis nisl vitae, rhoncus nunc. Praesent fringilla vulputate magna eget imperdiet. Cras ipsum nibh, convallis sed pellentesque non, euismod at sem. Fusce semper tincidunt nisl. Suspendisse vel turpis libero. Ut egestas porta orci nec rhoncus. Aliquam varius diam non mauris commodo dapibus. Quisque imperdiet auctor ultrices.
## Frequently asked questions
Sed ac pharetra metus. Pellentesque varius accumsan orci, ullamcorper ultrices nulla maximus eget. Nunc vestibulum pulvinar arcu, in aliquam augue eleifend nec. Donec turpis erat, varius non enim ac, pharetra eleifend ante. Vivamus malesuada nec felis id auctor. Duis mollis sed urna eget ultrices.
## Project strategy
Sed ac pharetra metus. Pellentesque varius accumsan orci, ullamcorper ultrices nulla maximus eget. Nunc vestibulum pulvinar arcu, in aliquam augue eleifend nec. Donec turpis erat, varius non enim ac, pharetra eleifend ante. Vivamus malesuada nec felis id auctor. Duis mollis sed urna eget ultrices.
## Managed hosting
Sed ac pharetra metus. Pellentesque varius accumsan orci, ullamcorper ultrices nulla maximus eget. Nunc vestibulum pulvinar arcu, in aliquam augue eleifend nec. Donec turpis erat, varius non enim ac, pharetra eleifend ante. Vivamus malesuada nec felis id auctor. Duis mollis sed urna eget ultrices.

View File

@ -0,0 +1,19 @@
---
title: Packeteer
---
## Introduction
Sed ac pharetra metus. Pellentesque varius accumsan orci, ullamcorper ultrices nulla maximus eget. Nunc vestibulum pulvinar arcu, in aliquam augue eleifend nec. Donec turpis erat, varius non enim ac, pharetra eleifend ante. Vivamus malesuada nec felis id auctor. Duis mollis sed urna eget ultrices. Nunc feugiat dolor nisi, sit amet condimentum ante placerat id. Maecenas nec sem pellentesque, venenatis nisl vitae, rhoncus nunc. Praesent fringilla vulputate magna eget imperdiet. Cras ipsum nibh, convallis sed pellentesque non, euismod at sem. Fusce semper tincidunt nisl. Suspendisse vel turpis libero. Ut egestas porta orci nec rhoncus. Aliquam varius diam non mauris commodo dapibus. Quisque imperdiet auctor ultrices.
## Frequently asked questions
Sed ac pharetra metus. Pellentesque varius accumsan orci, ullamcorper ultrices nulla maximus eget. Nunc vestibulum pulvinar arcu, in aliquam augue eleifend nec. Donec turpis erat, varius non enim ac, pharetra eleifend ante. Vivamus malesuada nec felis id auctor. Duis mollis sed urna eget ultrices.
## Project strategy
Sed ac pharetra metus. Pellentesque varius accumsan orci, ullamcorper ultrices nulla maximus eget. Nunc vestibulum pulvinar arcu, in aliquam augue eleifend nec. Donec turpis erat, varius non enim ac, pharetra eleifend ante. Vivamus malesuada nec felis id auctor. Duis mollis sed urna eget ultrices.
## Managed hosting
Sed ac pharetra metus. Pellentesque varius accumsan orci, ullamcorper ultrices nulla maximus eget. Nunc vestibulum pulvinar arcu, in aliquam augue eleifend nec. Donec turpis erat, varius non enim ac, pharetra eleifend ante. Vivamus malesuada nec felis id auctor. Duis mollis sed urna eget ultrices.

10
dev.sh Executable file
View File

@ -0,0 +1,10 @@
#!/bin/bash
trap "exit" INT TERM ERR
trap "killall hugo && killall tailwindcss" EXIT
hugo server --noHTTPCache &
./tailwindcss -i assets/css/styles.css -o assets/css/compiled/output.css --watch
wait
echo "Hugo and Tailwind running"

97
tailwind.config.js Normal file
View File

@ -0,0 +1,97 @@
/** @type {import('tailwindcss').Config} */
module.exports = {
content: [
"./themes/**/layouts/**/*.html",
"./content/**/layouts/**/*.html",
"./layouts/**/*.html",
"./content/**/*.html",
],
theme: {
fontFamily: {
custom: ["Inter", "sans-serif"],
},
colors: {
transparent: "transparent",
current: "currentColor",
salmon: "#FA765B",
forest: "#0A4D50",
"almost-white": "#F5F5F5",
grayish: "#F5F5F5",
white: "#FFFFFF",
black: "#000000",
},
maxWidth: {
"4xl": "960",
},
maxWidth: ({ theme, breakpoints }) => ({
none: "none",
0: "0rem",
xs: "20rem",
sm: "24rem",
md: "28rem",
lg: "32rem",
xl: "36rem",
"2xl": "42rem",
"3xl": "48rem",
"4xl": "60rem",
"5xl": "64rem",
"6xl": "72rem",
"7xl": "80rem",
full: "100%",
min: "min-content",
max: "max-content",
fit: "fit-content",
prose: "65ch",
...breakpoints(theme("screens")),
}),
typography: (theme) => ({
DEFAULT: {
css: {
color: theme("colors.forest"),
p: {
"margin-bottom": "1rem",
"line-height": "22.4px",
},
h1: {
"font-style": "normal",
"font-weight": 500,
"font-size": "28px",
"line-height": "130%",
"margin-bottom": "14px",
},
h2: {
"font-style": "normal",
"font-weight": 500,
"font-size": "24px",
"line-height": "130%",
"margin-bottom": "10px",
},
h3: {
"font-style": "normal",
"font-weight": 500,
"font-size": "20px",
"line-height": "120%",
"margin-bottom": "8px",
},
},
},
}),
extend: {},
},
"container-small": {
// you can configure the container to be centered
center: true,
// or have default horizontal padding
padding: "1rem",
// default breakpoints but with 40px removed
screens: {
sm: "600px",
md: "728px",
lg: "984px",
xl: "1140px",
},
},
plugins: [require("@tailwindcss/typography")],
};

BIN
tailwindcss Executable file

Binary file not shown.

20
themes/main-theme/LICENSE Normal file
View File

@ -0,0 +1,20 @@
The MIT License (MIT)
Copyright (c) 2022 YOUR_NAME_HERE
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.

View File

@ -0,0 +1,2 @@
+++
+++

View File

View File

@ -0,0 +1,15 @@
<!DOCTYPE html>
<html>
{{- partial "head.html" . -}}
<body class="bg-[#ffffff] flex flex-col min-h-screen">
{{- partial "header.html" . -}}
<main class="flex-1 flex flex-col py-6">
{{ block "main" . }}
{{ end }}
</main>
{{- partial "footer.html" . -}}
</body>
</html>

View File

@ -0,0 +1,74 @@
{{ define "main" }}
<div class="w-full">
<div class="container m-auto">
<div class="grid grid-cols-12 gap-14">
<div class="col-span-8 col- md:col-span-6">
<h1 class="text-5xl leading-10 font-normal text-forest mb-16">Towards a human-centric,<br />
next generation Internet.</h1>
<p class="w-64 h-8 text-2xl font-medium leading-loose text-salmon mb-4">Latest from the blog</p>
<div class="max-w-lg">
{{ range last 1 (where site.RegularPages "Type" "blog").ByDate }}
{{ partial "cards/blog-item" . }}
{{ end }}
</div>
</div>
<div class="col-span-4 md:col-span-6 max-w-xl">
<div class="inline-flex flex-col space-y-6">
<p class="w-64 h-8 text-2xl font-semibold leading-loose text-forest">What is Interpeer?</p>
<p class="text-lg leading-relaxed text-forest">The Interpeer
Projects objective is to empower a human centric internet. In practice, this currently takes
the
form of a technological initiative with the goal of providing a secure and efficient
peer-to-peer
networking stack, bypassing the protocols of the past. </p>
<h2 class="pt-8 font-normal text-5xl leading-10 text-forest">The future is fully distributed.</h2>
<p class="text-lg leading-relaxed text-forest">This initiative
is home to a growing number of projects, that can be explored in detail on this website. The
project's technical documentation is also available and regularly updated.
<br />
</p>
<div class="py-5 px-4 bg-forest w-full">
<div class="relative">
<p class="text-xl leading-7 text-white">Interested in supporting this
project? <a href="#"
class="text-xl font-medium leading-7 underline text-white uppercase">
donate</a></p>
</div>
</div>
</div>
</div>
</div>
<div class="py-12 lg:py-20 flex justify-center align-middle">
{{ partial "mail-subscription" . }}
</div>
</div>
</div>
<!-- Towards a human-centric, next generation Internet.
What is Interpeer?
The Interpeer Projects objective is to empower a human centric internet. In practice, this currently takes the
form of a technological initiative with the goal of providing a secure and efficient peer-to-peer networking
stack, bypassing the protocols of the past.
The future is fully distributed.
This initiative is home to a growing number of projects, that can be explored in detail on this website. The
project's technical documentation is also available and regularly updated.
Interested in supporting this project? -->
{{ end }}

View File

@ -0,0 +1,33 @@
{{ define "main" }}
<div class="container mx-auto">
<div class="inline-flex mb-8">
<a href="/blog/"
class="inline-flex items-center px-4 py-3 border border-forest text-forest hover:bg-forest hover:text-white">
<span class="flex-1 h-full text-xl font-medium leading-7 text-center">All</span>
</a>
{{$currentpage := .Page.Data.Term}}
{{ range .Site.Taxonomies.categories }}
{{ if eq $currentpage .Page.Title}}
<a href="{{ .Page.Permalink }}" class="inline-flex items-center px-4 py-3 border bg-forest border-forest">
<span class="h-full text-xl font-medium leading-7 text-center text-white">{{ .Page.Title }}</span>
</a>
{{ else }}
<a href="{{ .Page.Permalink }}"
class="inline-flex items-center px-4 py-3 border border-forest text-forest hover:bg-forest hover:text-white">
<span class="h-full text-xl font-medium leading-7 text-center">{{ .Page.Title }}</span>
</a>
{{ end }}
{{ end }}
</div>
{{ $paginator := .Paginate (where .Pages "Type" "blog") }}
<div class="grid grid-cols-2 gap-16">
{{ range $paginator.Pages }}
{{ partial "cards/blog-item" . }}
{{ end }}
</div>
{{ template "partials/pagination.html" . }}
</div>
{{ end }}

View File

@ -0,0 +1,28 @@
{{ define "main" }}
<div class="container mx-auto">
<div class="inline-flex mb-8">
<a href="/blog/" class="inline-flex items-center justify-center w-24 flex-1 pl-4 pr-5 py-3 bg-forest">
<span class="flex-1 h-full text-xl font-medium leading-7 text-center text-white">All</span>
</a>
{{ range .Site.Taxonomies.categories }}
<a href="{{ .Page.Permalink }}"
class="inline-flex items-center px-4 py-3 border border-forest text-forest hover:bg-forest hover:text-white">
<span class="h-full text-xl font-medium leading-7 text-center">{{ .Page.Title }}</span>
</a>
{{ end }}
</div>
{{ $paginator := .Paginate (where .Pages "Type" "blog") }}
<div class="grid grid-cols-2 gap-16">
{{ range $paginator.Pages }}
{{ partial "cards/blog-item" . }}
{{ end }}
</div>
{{ template "partials/pagination.html" . }}
</div>
{{ end }}

View File

@ -0,0 +1,21 @@
{{ define "main" }}
<div class="max-w-2xl mx-auto">
<h1 class="text-2xl font-medium leading-loose text-forest">{{ .Title }}</h1>
{{ with .Params.categories }}
<ul id="tags">
{{ range . }}
<li> <a class="underline text-salmon mr-1" href=" {{ " categories/" | absURL }}{{ . | urlize }}">{{ . }}</a>
</li>
{{ end }}
</ul>
{{ end }}
<section class="prose mt-5">
<article>
{{ .Content }}
</article>
</section>
<hr class="text-forest">
<p class="text-forest">Published on {{ .Date | time.Format ":date_short" }}</p>
</div>
{{ end }}

View File

@ -0,0 +1,86 @@
{{ define "main" }}
<div class="relative grid grid-cols-2 gap-16 pt-9 container mx-auto mb-12">
<div class="border border-salmon">
<div class="inline-flex items-center justify-start pl-8 pt-2.5 pb-2 left-0 top-0 bg-salmon w-full">
<p class="flex-1 h-full text-2xl font-medium leading-loose text-almost-white">Why Interpeer?</p>
</div>
<div class="prose pt-4 px-8">
<p class="text-base leading-snug text-forest">
The Interpeer Project was born out of a deeply
critical perspective of the contemporary state of human-computer interaction and the Internet.</p>
<p class="text-base leading-snug text-forest">
Computers have become ubiquitous. However, the most
popular protocol connecting users to remote machines, HTTP, follows an obsolete philosophy. User data
does
not
need to be arbitrated by and traverse third party machines.
<br />
</p>
<p class="text-base leading-snug text-forest">
We need an Internet that fits contemporary usage
patterns.</p>
<p class="text-base leading-snug text-forest">
The Interpeer Project was developed to address these
topics, with the goal of helping build a human-centric internet.
<br />
</p>
<p class="text-base leading-snug text-red-400 text-salmon">An Internet where people own
their data and can share it between devices and contacts without the need for intermediaries.
</p>
</div>
<div class="border-t border-salmon prose px-8 pt-4">
<p class="text-base leading-snug text-red-400 text-salmon">Where cryptography allows
users to securely delegate trust to any number of devices, even those they dont know directly.
</p>
</div>
<div class="border-t border-salmon prose px-8 pt-4">
<p class="text-base leading-snug text-red-400 text-salmon">A peer-to-peer networking
technology that enables trust delegated machines to share data directly and efficiently.
</p>
<p class="text-base leading-snug text-red-400">The Interpeer Project was developed to address these topics,
with the goal of helping build a human-centric internet.
</p>
</div>
</div>
<div>
<div class="border border-forest">
<div class="inline-flex items-center justify-start pl-8 pt-2.5 pb-2 left-0 top-0 bg-forest w-full">
<p class="flex-1 h-full text-2xl font-medium leading-loose text-almost-white">On “Human-centric”</p>
</div>
<div class="prose pt-4 px-8">
<p class="text-base leading-snug text-forest">
It's important to provide a clear definition of what "human-centric" means in the context of this
project.
</p>
<p class="text-base leading-snug text-forest">
For the purposes of this project, "Human" opposes the artificial, data-harvesting, centralised
market logic of the main communication platforms in contemporary society.
</p>
<p class="text-base leading-snug text-forest">
It also acknowledges the human experiences as a small part of what constitutes nature, and is in now
way superior or more important than any other life form or living consciousness.
</p>
</div>
</div>
<div class="border border-forest mt-10">
<div class="inline-flex items-center justify-start pl-8 pt-2.5 pb-2 left-0 top-0 bg-forest w-full">
<p class="flex-1 h-full text-2xl font-medium leading-loose text-almost-white">On “Human-centric”</p>
</div>
<div class="prose pt-4 px-8">
<p class="text-base leading-snug text-forest">
It's important to provide a clear definition of what "human-centric" means in the context of this
project.
</p>
<p class="text-base leading-snug text-forest">
For the purposes of this project, "Human" opposes the artificial, data-harvesting, centralised
market logic of the main communication platforms in contemporary society.
</p>
<p class="text-base leading-snug text-forest">
It also acknowledges the human experiences as a small part of what constitutes nature, and is in now
way superior or more important than any other life form or living consciousness.
</p>
</div>
</div>
</div>
</div>
{{ end }}

View File

@ -0,0 +1,10 @@
<div class="border border-forest">
<div class="inline-flex items-center justify-start pl-8 pr-72 pt-2.5 pb-2 left-0 top-0 bg-forest w-full">
<p class="flex-1 h-full text-2xl font-medium leading-loose text-almost-white">{{.cardTitle}}</p>
</div>
<div class="prose pt-4 px-8">
<p class="text-base leading-snug text-forest">
{{.cardSummary}}
</p>
</div>
</div>

View File

@ -0,0 +1,14 @@
<div class="border border-salmon">
<div class="inline-flex items-center justify-start px-8 pt-2.5 pb-2 bg-salmon w-full">
<p class="flex-1 w-full text-2xl font-medium leading-loose text-almost-white">{{.Title}}</p>
</div>
<div class="prose pt-4 px-8">
<p class="text-base leading-snug text-salmon">
{{.Summary}}
</p>
</div>
<div class="inline-flex items-center justify-start px-8 pt-2.5 pb-2 bg-salmon w-full">
{{ if .Title }} <a class="flex-1 w-full text-xl underline font-normal leading-loose text-almost-white"
href="{{ .Permalink }}">Read more</a> {{ end }}
</div>
</div>

View File

@ -0,0 +1,16 @@
<footer class="bg-grayish inline-grid grid-cols-3 pt-8 pb-9">
<div class="m-auto min-w-fit flex flex-col justify-center col-start-2">
<img src="/interpeer-logo-small.svg" class="h-6 mb-6 w-fit m-auto " alt="Logo Interpeer small">
<div class="relative flex w-fit">
<p class="w-28 h-5 text-base leading-tight underline text-center text-salmon">
Codeberg</p>
<p class="w-28 h-5 text-base leading-tight underline text-center text-salmon">
Mastodon</p>
</div>
</div>
<div class="items-end mt-auto">
<p class="w-72 h-9 text-base leading-tight text-right text-forest">The Interpeer Project was created and
maintained by <a href="#" class="text-salmon">Jens
Finkhauser.</a></p>
</div>
</footer>

View File

@ -0,0 +1,10 @@
<head>
<!-- <link rel='stylesheet' type='text/css' href='/style.css'> -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="robots" content="index, follow">
<meta charset="utf-8">
<link rel="stylesheet" href="/styles.css">
{{ $css := resources.Get "css/compiled/output.css" }}
{{ $style := $css | resources.Minify }}
<link type="text/css" rel="stylesheet" href="{{ $style.RelPermalink }}" />
</head>

View File

@ -0,0 +1,8 @@
<header class="header-background">
<div class="h-28 w-full flex items-center justify-between container mx-auto">
<a href="/">
<img src="/logo.svg" class="h-9" alt="Logo Interpeer">
</a>
{{- partial "nav.html" . -}}
</div>
</header>

View File

@ -0,0 +1,12 @@
<div class="relative max-w-md border-[1px] border-forest">
<div class="inline-flex items-center justify-center px-4 py-3.5 bg-forest w-full">
<p class="flex-1 h-full text-xl font-medium leading-7 text-center text-white">Join the mailing list</p>
</div>
<form class="relative border border-forest flex flex-row py-4 px-4">
<input class="border-b text-base leading-tight border-forest text-gray-400 mr-4" type="text"
placeholder="Email address">
<input
class="text-xl border-b border-forest leading-7 text-forest cursor-pointer focus:outline-1 focus:outline focus:outline-offset-2"
type="submit" value="Subscribe">
</form>
</div>

View File

@ -0,0 +1,13 @@
<nav>
<ul class="flex">
{{ $currentPage := . }}
{{ range .Site.Menus.main }}
<li class="px-4">
<a href="{{ .URL }}" class="font-medium uppercase text-almost-white underline hover:text-salmon{{ if $currentPage.IsMenuCurrent "main" . }} !text-salmon{{ end }}">
{{ .Pre }}
<span>{{ .Name }}</span>
</a>
</li>
{{ end }}
</ul>
</nav>

View File

@ -0,0 +1,48 @@
{{ $pag := $.Paginator }}
{{ if gt $pag.TotalPages 1 }}
<nav class="pagination w-full flex justify-center py-10">
<ul class="flex w-max items-center space-x-2">
{{ with $pag.First }}
<li>
<a href="{{ .URL }}" class="pagination-link text-salmon" disabled aria-label="First">
<span aria-hidden="true">
<svg xmlns="http://www.w3.org/2000/svg" width="17" height="18"><g fill="none" fill-rule="evenodd" stroke="#FA765B" stroke-width="2"><path d="M16 17 8 9l8-8"/><path d="M10 17 2 9l8-8"/></g></svg>
</span>
</a>
</li>
{{ end }}
<li>
<a href="{{ if $pag.HasPrev }}{{ $pag.Prev.URL }}{{ end }}" class="pagination-link" {{ if not $pag.HasPrev }} disabled{{ end }} aria-label="Previous"><svg xmlns="http://www.w3.org/2000/svg" width="17" height="18"><g fill="none" fill-rule="evenodd" stroke="#FA765B" stroke-width="2"><path d="M10 17 2 9l8-8"/></g></svg></a>
</li>
{{ $ellipsed := false }}
{{ $shouldEllipse := false }}
{{ range $pag.Pagers }}
{{ $right := sub .TotalPages .PageNumber }}
{{ $showNumber := or (le .PageNumber 3) (eq $right 0) }}
{{ $showNumber := or $showNumber (and (gt .PageNumber (sub $pag.PageNumber 2)) (lt .PageNumber (add $pag.PageNumber 2))) }}
{{ if $showNumber }}
{{ $ellipsed = false }}
{{ $shouldEllipse = false }}
{{ else }}
{{ $shouldEllipse = not $ellipsed }}
{{ $ellipsed = true }}
{{ end }}
{{ if $showNumber }}
<li><a class="pagination-link text-xl leading-normal {{ if eq . $pag }}text-salmon underline{{ end }}" href="{{ .URL }}">{{ .PageNumber }}</a></li>
{{ else if $shouldEllipse }}
<li class="pagination-link" disabled><span aria-hidden="true">&nbsp;&hellip;&nbsp;</span></li>
{{ end }}
{{ end }}
<li>
<a href="{{ if $pag.HasNext }}{{ $pag.Next.URL }}{{ end }}" class="pagination-link" {{ if not $pag.HasNext }}disabled{{ end }} aria-label="Next"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="18" fill="none"><path stroke="#FA765B" stroke-width="2" d="m1 1 8 8-8 8"/></svg></a>
</li>
{{ with $pag.Last }}
<li>
<a class="flex" href="{{ .URL }}" class="pagination-link" {{ if not $pag.HasNext }}disabled{{ end }} aria-label="Last">
<svg xmlns="http://www.w3.org/2000/svg" width="17" height="18"><g fill="none" fill-rule="evenodd" stroke="#FA765B" stroke-width="2"><path d="m1 1 8 8-8 8"/><path d="m7 1 8 8-8 8"/></g></svg>
</a>
</li>
{{ end }}
</ul>
</nav>
{{ end }}

View File

@ -0,0 +1,12 @@
{{ define "main" }}
<div class="container mx-auto">
{{ $paginator := .Paginate (where .Pages "Type" "projects") }}
<div class="grid grid-cols-2 gap-16">
{{ range $paginator.Pages }}
{{ partial "cards/blog-item" . }}
{{ end }}
</div>
{{ template "partials/pagination.html" . }}
</div>
{{ end }}

View File

@ -0,0 +1,74 @@
{{ define "main" }}
<div class="container mx-auto">
<p class="text-2xl font-medium leading-loose text-forest mb-1">List of projects</p>
<div class="inline-flex mb-8">
{{$currentpage := .Page.Title}}
{{ $section := "projects" }}
{{ range (where .Site.RegularPages.ByTitle "Section" $section ) }}
{{ if eq $currentpage .Page.Title}}
<a href="{{ .Permalink }}" class="inline-flex items-center px-4 py-3 border bg-forest border-forest">
<span class="h-full text-xl font-medium leading-7 text-center text-white">{{ .Params.title | humanize |
title }}</span>
</a>
{{ else }}
<a href="{{ .Permalink }}"
class="inline-flex items-center px-4 py-3 border border-forest text-forest hover:bg-forest hover:text-white">
<span class="h-full text-xl font-medium leading-7 text-center">{{ .Params.title | humanize | title }}</span>
</a>
{{ end }}
{{ end }}
</div>
<div class="flex mt-9">
<aside>
<div class="underline text-xl leading-7 text-forest mt-7">
{{ .Page.TableOfContents }}
</div>
</aside>
<div class="max-w-2xl mx-auto">
<div class="inline-flex items-center justify-start px-8 py-4 mb-4 bg-salmon w-full">
<h1 class="flex-1 w-full text-2xl font-medium leading-loose text-almost-white">{{.Title}}</h1>
</div>
<section class="prose prose-lg">
<div>
<article>
{{ .Content }}
</article>
</div>
</section>
</div>
</div>
</div>
<aside id="meta">
<div>
<section>
<h4 id="date"> {{ .Date.Format "Mon Jan 2, 2006" }} </h4>
<h5 id="wordcount"> {{ .WordCount }} Words </h5>
</section>
{{ with .Params.topics }}
<ul id="topics">
{{ range . }}
<li><a href="{{ " topics" | absURL}}{{ . | urlize }}">{{ . }}</a> </li>
{{ end }}
</ul>
{{ end }}
{{ with .Params.tags }}
<ul id="tags">
{{ range . }}
<li> <a href="{{ " tags" | absURL }}{{ . | urlize }}">{{ . }}</a> </li>
{{ end }}
</ul>
{{ end }}
</div>
<div>
{{ with .PrevInSection }}
<a class="previous" href="{{.Permalink}}"> {{.Title}}</a>
{{ end }}
{{ with .NextInSection }}
<a class="next" href="{{.Permalink}}"> {{.Title}}</a>
{{ end }}
</div>
</aside>
{{ end }}

View File

@ -0,0 +1,21 @@
# theme.toml template for a Hugo theme
# See https://github.com/gohugoio/hugoThemes#themetoml for an example
name = "Main Theme"
license = "MIT"
licenselink = "https://github.com/yourname/yourtheme/blob/master/LICENSE"
description = ""
homepage = "http://example.com/"
tags = []
features = []
min_version = "0.41.0"
[author]
name = ""
homepage = ""
# If porting an existing theme
[original]
name = ""
homepage = ""
repo = ""