adapt website for hugo
This commit is contained in:
parent
3968d5d379
commit
ecf49a5e11
22 changed files with 356 additions and 1184 deletions
20
themes/cozy-hugo/LICENSE
Normal file
20
themes/cozy-hugo/LICENSE
Normal 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.
|
2
themes/cozy-hugo/archetypes/default.md
Normal file
2
themes/cozy-hugo/archetypes/default.md
Normal file
|
@ -0,0 +1,2 @@
|
|||
+++
|
||||
+++
|
233
themes/cozy-hugo/assets/css/main.scss
Normal file
233
themes/cozy-hugo/assets/css/main.scss
Normal file
|
@ -0,0 +1,233 @@
|
|||
:root {
|
||||
--background: rgb(255, 255, 230);
|
||||
--background-header: rgb(250, 220, 120);
|
||||
--background-nav: rgb(252.5, 237.5, 175);
|
||||
--text: rgb(50, 50, 50);
|
||||
--sphere: rgb(245, 180, 100);
|
||||
--hill: rgb(50, 235, 150);
|
||||
--hillshade: rgb(40, 160, 100);
|
||||
--image-decorative-blend: initial;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
--background: rgb(0, 45, 60);
|
||||
--background-header: rgb(0, 70, 100);
|
||||
--background-nav: rgb(0, 62.5, 80);
|
||||
--text: rgb(255, 255, 255);
|
||||
--sphere: rgb(105, 210, 255);
|
||||
--hill: rgb(0, 95, 135);
|
||||
--hillshade: rgb(0, 45, 60);
|
||||
--image-decorative-blend: luminosity;
|
||||
}
|
||||
}
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
scrollbar-color: var(--sphere) var(--background-header);
|
||||
}
|
||||
|
||||
html {
|
||||
scroll-behavior: smooth;
|
||||
}
|
||||
|
||||
a {
|
||||
color: var(--text);
|
||||
text-underline-offset: 3px;
|
||||
transition: text-decoration-color .15s ease;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
text-decoration-color: var(--sphere);
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: var(--background);
|
||||
color: var(--text);
|
||||
font-family: 'Lucida Console', 'Courier New', monospace;
|
||||
hyphens: auto;
|
||||
line-height: 1.8;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
header {
|
||||
background-blend-mode: var(--image-decorative-blend);
|
||||
background-color: var(--background-header);
|
||||
background-image: url(home-header-optimized.svg);
|
||||
background-position: center;
|
||||
color: var(--text);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
height: 40vh;
|
||||
justify-content: center;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
header h1 {
|
||||
font-size: 3.6em;
|
||||
line-height: .9em;
|
||||
margin: 0;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
header p {
|
||||
margin: 0;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
header #sphere {
|
||||
background: var(--sphere);
|
||||
border-radius: 100%;
|
||||
display: none;
|
||||
height: 10vh;
|
||||
left: 30vw;
|
||||
position: absolute;
|
||||
top: 3vh;
|
||||
width: 10vh;
|
||||
}
|
||||
|
||||
header #hill {
|
||||
background: var(--hill);
|
||||
border-radius: 40px;
|
||||
bottom: 0;
|
||||
display: none;
|
||||
height: 40vh;
|
||||
left: 50vw;
|
||||
position: absolute;
|
||||
transform: rotate(45deg) translate(50%, 50%);
|
||||
width: 40vh;
|
||||
}
|
||||
|
||||
header #hillshade {
|
||||
background: var(--hillshade);
|
||||
border-radius: 80px;
|
||||
bottom: -5vh;
|
||||
display: none;
|
||||
height: 40vh;
|
||||
left: 30vw;
|
||||
position: absolute;
|
||||
transform: rotate(45deg) translate(50%, 50%);
|
||||
width: 40vh;
|
||||
}
|
||||
|
||||
#header-background {
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
align-self: center;
|
||||
}
|
||||
|
||||
body > nav {
|
||||
align-items: center;
|
||||
background: var(--background-nav);
|
||||
border-radius: 10px;
|
||||
display: flex;
|
||||
gap: 20px;
|
||||
height: 60px;
|
||||
justify-content: center;
|
||||
margin: 0px 20px -30px 20px;
|
||||
position: relative;
|
||||
top: -30px;
|
||||
}
|
||||
|
||||
.width-1200 {
|
||||
margin: 0 auto;
|
||||
max-width: 1200px;
|
||||
}
|
||||
|
||||
main section {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(3, 1fr);
|
||||
grid-gap: 20px;
|
||||
}
|
||||
|
||||
main article {
|
||||
background: var(--background-header);
|
||||
border-radius: 10px;
|
||||
box-shadow: rgba(0, 0, 0, 0.1) 10px 10px 0px 0px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding: 40px;
|
||||
transition: box-shadow .3s ease, transform .3s ease;
|
||||
}
|
||||
|
||||
main article:hover {
|
||||
box-shadow: rgba(0, 0, 0, 0.1) 10px 15px 0px 0px;
|
||||
transform: translate(0, -5px);
|
||||
}
|
||||
|
||||
main article a {
|
||||
background: var(--background);
|
||||
border-radius: 5px;
|
||||
box-shadow: rgba(0, 0, 0, 0.1) 5px 5px 0px 0px;
|
||||
color: var(--text);
|
||||
display: inline-block;
|
||||
font-weight: bold;
|
||||
padding: 10px 14px;
|
||||
text-decoration: none;
|
||||
transition: box-shadow .15s ease, transform .15s ease;
|
||||
}
|
||||
|
||||
main article a:hover {
|
||||
box-shadow: rgba(0, 0, 0, 0.1) 2.5px 2.5px 0px 0px;
|
||||
transform: translate(2.5px, 2.5px);
|
||||
}
|
||||
|
||||
main article a:active {
|
||||
box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 0px 0px;
|
||||
transform: translate(5px, 5px);
|
||||
}
|
||||
|
||||
main article h2 {
|
||||
font-size: 1.8em;
|
||||
line-height: normal;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
main article p {
|
||||
margin: 20px 0;
|
||||
}
|
||||
|
||||
main article nav {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 10px;
|
||||
hyphens: none;
|
||||
margin-top: auto;
|
||||
}
|
||||
|
||||
footer {
|
||||
margin-top: 20px !important;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/*footer p, footer a {
|
||||
text-align: center;
|
||||
color: rgb(80, 150, 190);
|
||||
}*/
|
||||
|
||||
@media (max-width: 1000px) {
|
||||
header hill {
|
||||
transform: rotate(45deg) translate(40%, 70%);
|
||||
}
|
||||
header hillshade {
|
||||
transform: rotate(45deg) translate(20%, 80%);
|
||||
}
|
||||
section#dienste {
|
||||
grid-template-columns: repeat(2, 1fr);
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 600px) {
|
||||
section#dienste {
|
||||
grid-template-columns: repeat(1, 1fr);
|
||||
}
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
header #sphere {
|
||||
left: unset;
|
||||
right: 30vw;
|
||||
}
|
||||
}
|
0
themes/cozy-hugo/layouts/404.html
Normal file
0
themes/cozy-hugo/layouts/404.html
Normal file
15
themes/cozy-hugo/layouts/_default/baseof.html
Normal file
15
themes/cozy-hugo/layouts/_default/baseof.html
Normal file
|
@ -0,0 +1,15 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
{{ partial "head.html" . }}
|
||||
</head>
|
||||
|
||||
<body>
|
||||
{{- block "header" . }}{{- end }}
|
||||
{{ partial "nav.html" . }}
|
||||
{{- block "main" . }}{{- end }}
|
||||
{{ partial "footer.html" . }}
|
||||
</body>
|
||||
|
||||
</html>
|
0
themes/cozy-hugo/layouts/_default/list.html
Normal file
0
themes/cozy-hugo/layouts/_default/list.html
Normal file
0
themes/cozy-hugo/layouts/_default/single.html
Normal file
0
themes/cozy-hugo/layouts/_default/single.html
Normal file
36
themes/cozy-hugo/layouts/index.html
Normal file
36
themes/cozy-hugo/layouts/index.html
Normal file
|
@ -0,0 +1,36 @@
|
|||
{{ define "header"}}
|
||||
<header>
|
||||
<h1>Cozy Town</h1>
|
||||
<p>Dienste für flauschige Menschen</p>
|
||||
<!--<img id="header-background" src="header.svg">-->
|
||||
</header>
|
||||
{{- end }}
|
||||
{{ define "main" }}
|
||||
<main class="width-1200">
|
||||
<section id="dienste">
|
||||
<article class="cozyChat">
|
||||
<h2>Chat</h2>
|
||||
<p>Schreibe sicher und vertraulich mit deinen Freunden, Bekannten und deiner Familie.</p>
|
||||
<nav aria-label="Links zu Matrix">
|
||||
<a href="https://chat.cozy.town">Starten</a>
|
||||
<a href="https://doc.matrix.tu-dresden.de/">Dokumentation</a>
|
||||
</nav>
|
||||
</article>
|
||||
<article class="cozyTalk">
|
||||
<h2>Talk</h2>
|
||||
<p>Sprich sicher, aber öffentlicher mit anderen Leuten.</p>
|
||||
<nav aria-label="Links zu Mumble" class="service-nav">
|
||||
<a href="mumble://mumble.natenom.com/PUBLIC/Eingang%20%7C%20Entrance?title=Natemologie-Zentrum&version=1.2.0">Verbinden</a>
|
||||
<a href="https://wiki.natenom.de/mumble">Dokumentation</a>
|
||||
</nav>
|
||||
</article>
|
||||
<article class="cozyCode">
|
||||
<h2>Code</h2>
|
||||
<p>Starte und pflege deine Projekte.</p>
|
||||
<nav aria-label="Links zu Gitea">
|
||||
<a href="https://code.cozy.town">Starten</a>
|
||||
</nav>
|
||||
</article>
|
||||
</section>
|
||||
</main>
|
||||
{{- end }}
|
4
themes/cozy-hugo/layouts/partials/footer.html
Normal file
4
themes/cozy-hugo/layouts/partials/footer.html
Normal file
|
@ -0,0 +1,4 @@
|
|||
<footer class="width-1200">
|
||||
<a href="//vrifox.cc">Vri</a>
|
||||
<a href="//code.cozy.town/cozytown/website/">Quellcode</a>
|
||||
</footer>
|
8
themes/cozy-hugo/layouts/partials/head.html
Normal file
8
themes/cozy-hugo/layouts/partials/head.html
Normal file
|
@ -0,0 +1,8 @@
|
|||
{{ $options := (dict "targetPath" "style.css" "outputStyle" "compressed" "enableSourceMap" (not hugo.IsProduction) "includePaths" (slice "node_modules/myscss")) }}
|
||||
{{ $css := resources.Get "css/main.scss" | resources.ToCSS $options }}
|
||||
|
||||
<title>{{ if not .Page.IsHome }}{{ with .Page.Title }}{{ . }} – {{ end }}{{ end }}Cozy Town</title>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<link rel="stylesheet" href="{{ $css.Permalink | relURL }}" type="text/css" media="screen" />
|
||||
<link rel="icon" type="image/png" href="favicon.png">
|
3
themes/cozy-hugo/layouts/partials/nav.html
Normal file
3
themes/cozy-hugo/layouts/partials/nav.html
Normal file
|
@ -0,0 +1,3 @@
|
|||
<nav class="width-1200">
|
||||
<a href="#dienste">Dienste</a>
|
||||
</nav>
|
15
themes/cozy-hugo/theme.toml
Normal file
15
themes/cozy-hugo/theme.toml
Normal file
|
@ -0,0 +1,15 @@
|
|||
# theme.toml template for a Hugo theme
|
||||
# See https://github.com/gohugoio/hugoThemes#themetoml for an example
|
||||
|
||||
name = "Cozy Hugo"
|
||||
license = "Unknown"
|
||||
licenselink = "https://code.cozy.town/cozytown/website-hugo/blob/master/LICENSE"
|
||||
description = "The website of Cozy Town rewritten in hugo"
|
||||
homepage = "http://cozy.town/"
|
||||
tags = []
|
||||
features = []
|
||||
min_version = "0.41.0"
|
||||
|
||||
[author]
|
||||
name = "Vri (vrifox)"
|
||||
homepage = "https://vrifox.cc/"
|
Loading…
Add table
Add a link
Reference in a new issue