commit 7da7f1d7957bd4b9f29d55226eea395bd4a15f4d Author: prokopparuzek Date: Mon Aug 18 16:59:37 2025 +0200 init diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e7e3002 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.hugo_build.lock +public diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..a6851ba --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "themes/terminal"] + path = themes/terminal + url = https://github.com/panr/hugo-theme-terminal.git diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..72d6c92 --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,4 @@ ++++ +date = '{{ .Date }}' +title = '{{ replace .File.ContentBaseName "-" " " | title }}' ++++ diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..30d2189 --- /dev/null +++ b/config.toml @@ -0,0 +1,45 @@ +baseurl = "/" +languageCode = "cs" +theme = "terminal" +pagination.pagerSize = 8 +defaultContentLanguage = "cs" + +[markup.goldmark.renderer] + unsafe = true + +[params] + contentTypeName = "posts" + showMenuItems = 5 + fullWidthTheme = true + centerTheme = false + +[languages] + [languages.cs] + title = "Hry" + [languages.cs.params] + subtitle = "Prokop approved games" + keywords = "" + copyright = "" + menuMore = "Více" + readMore = "Pokračování" + readOtherPosts = "Další" + newerPosts = "Novější" + olderPosts = "Starší" + missingContentMessage = "Stránka nenalezena" + missingBackButtonLabel = "Zpět na hlavní stranu" + + [languages.cs.params.logo] + logoText = "Hry" + logoHomeLink = "/" + + [languages.cs.menu] + [[languages.cs.menu.main]] + identifier = "roguelikes" + name = "Roguelikes" + url = "/roguelikes" + weight = 1 + [[languages.cs.menu.main]] + identifier = "other" + name = "Další hry" + url = "/other" + weight = 10 diff --git a/content/_index.md b/content/_index.md new file mode 100644 index 0000000..d7e6eac --- /dev/null +++ b/content/_index.md @@ -0,0 +1,8 @@ ++++ +title = "Vítejte" +date = "2025-08-18T13:47:11+02:00" ++++ + +Seznamy her, které považuji za dobré a nejspíš jsem je i někdy hrál. + +Seznamy jsou rozdělené dle kategorií v menu nahoře. diff --git a/content/other/_index.md b/content/other/_index.md new file mode 100644 index 0000000..f4e6afd --- /dev/null +++ b/content/other/_index.md @@ -0,0 +1,4 @@ ++++ +title = "Další hry" +date = "2025-08-18T13:47:11+02:00" ++++ diff --git a/content/other/ottd.md b/content/other/ottd.md new file mode 100644 index 0000000..e345d43 --- /dev/null +++ b/content/other/ottd.md @@ -0,0 +1,8 @@ ++++ +date = '2025-08-18T13:46:52+02:00' +title = 'Open TTD' ++++ + +Velmi dobrý simulátor dopravního magnáta. + +[https://www.openttd.org/](https://www.openttd.org/) diff --git a/content/roguelikes/_index.md b/content/roguelikes/_index.md new file mode 100644 index 0000000..f305dae --- /dev/null +++ b/content/roguelikes/_index.md @@ -0,0 +1,4 @@ ++++ +title = "Roguelikes" +date = "2025-08-18T13:47:11+02:00" ++++ diff --git a/content/roguelikes/cogmind.md b/content/roguelikes/cogmind.md new file mode 100644 index 0000000..c607af3 --- /dev/null +++ b/content/roguelikes/cogmind.md @@ -0,0 +1,4 @@ ++++ +date = '2025-08-18T16:39:23+02:00' +title = 'Cogmind' ++++ diff --git a/content/roguelikes/crypt.md b/content/roguelikes/crypt.md new file mode 100644 index 0000000..911629e --- /dev/null +++ b/content/roguelikes/crypt.md @@ -0,0 +1,6 @@ ++++ +date = '2025-08-18T16:39:18+02:00' +title = 'Crypt of the NecroDancer' ++++ + +Zábavná rytmická hra, hrajete velmi jednoduchý roguelike, avšak na každý tah máte čas jen mezi dvěma dobami. diff --git a/content/roguelikes/dcss.md b/content/roguelikes/dcss.md new file mode 100644 index 0000000..8171f5c --- /dev/null +++ b/content/roguelikes/dcss.md @@ -0,0 +1,15 @@ ++++ +date = '2025-08-18T13:46:52+02:00' +title = 'Dungeon Crawl Stone Soup' ++++ + +Nethack, ale dá se hrát. Má rozumné ovládání myší, webové rozhraní, integrovanou nápovědu ve hře, není závislý na +obskurních technikách a wiki, velmi aktivně vyvíjený se snahou, aby hra byla fér. + +Má celkem aktivní komunitu, vždy při vydání nové verze se pořádají turnaje. + +Dá se hrát zde [https://dcss.h21.cz](https://dcss.h21.cz). + +Případně stáhnout a hrát na tomto odkaze [https://crawl.develz.org/](https://crawl.develz.org/). + +[http://crawl.chaosforge.org/Crawl_Wiki](http://crawl.chaosforge.org/Crawl_Wiki) diff --git a/content/roguelikes/nethack.md b/content/roguelikes/nethack.md new file mode 100644 index 0000000..0cb187a --- /dev/null +++ b/content/roguelikes/nethack.md @@ -0,0 +1,8 @@ ++++ +date = '2025-08-18T13:46:52+02:00' +title = 'Nethack' ++++ + +[https://www.thegreatestgameyouwilleverplay.com/](https://www.thegreatestgameyouwilleverplay.com/) + +[https://nethackwiki.com/wiki/Main_Page](https://nethackwiki.com/wiki/Main_Page) diff --git a/layouts/404.html b/layouts/404.html new file mode 100644 index 0000000..2852625 --- /dev/null +++ b/layouts/404.html @@ -0,0 +1,9 @@ +{{ define "main" }} +

404 Stránka nenalezena

+

Chceš se dostat na neexistující stránku.

+

+ + Zpět na domovskou stránku + +

+{{ end }} diff --git a/static/favicon.png b/static/favicon.png new file mode 100644 index 0000000..2558293 Binary files /dev/null and b/static/favicon.png differ diff --git a/static/og-image.png b/static/og-image.png new file mode 100644 index 0000000..97b9e37 Binary files /dev/null and b/static/og-image.png differ diff --git a/static/robots.txt b/static/robots.txt new file mode 100644 index 0000000..1f53798 --- /dev/null +++ b/static/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Disallow: / diff --git a/static/terminal.css b/static/terminal.css new file mode 100644 index 0000000..0c461eb --- /dev/null +++ b/static/terminal.css @@ -0,0 +1,387 @@ +/* Fira Code: https://github.com/tonsky/FiraCode */ +@import url('https://cdn.staticdelivr.com/gfonts/css2?family=Fira+Code:wght@300..700&display=swap'); + +:root { + --background: #1a170f; + --foreground: #eceae5; + --accent: #32858b; + --radius: 0; + --font-size: 1rem; + --line-height: 1.54em; +} + +html { + box-sizing: border-box; +} + +*, +*:before, +*:after { + box-sizing: inherit; + margin: 0; + padding: 0; +} + +body { + font-family: + "Fira Code", + "JetBrains Mono", + Monaco, + Consolas, + "Ubuntu Mono", + monospace; + font-size: var(--font-size); + font-weight: 400; + line-height: var(--line-height); + background-color: var(--background); + color: var(--foreground); + text-rendering: optimizeLegibility; + font-variant-ligatures: contextual; + -webkit-overflow-scrolling: touch; + -webkit-text-size-adjust: 100%; + margin: 0; + padding: 0; +} + +h1 { + font-size: calc(var(--font-size) * 1.45); + letter-spacing: 0; +} + +h2 { + font-size: calc(var(--font-size) * 1.35); + letter-spacing: 0; +} + +h3 { + font-size: calc(var(--font-size) * 1.15); + letter-spacing: 0; +} + +h4, +h5, +h6 { + font-size: calc(var(--font-size) * 1); + letter-spacing: 0; +} + +h1, h2, h3, h4, h5, h6, +p, ul, ol, +img, figure, video, +table { + margin: 25px 0; +} + +a { + color: var(--accent); +} + +button { + position: relative; + font: inherit; + font-weight: bold; + text-decoration: none; + text-align: center; + background: transparent; + color: var(--accent); + padding: 5px 18px; + border: 4px solid var(--accent); + border-radius: var(--radius); + transition: background 0.15s linear; + appearance: none; + cursor: pointer; + outline: none; +} + +button:hover { + background: color-mix(in srgb, var(--accent) 15%, transparent); +} + +button:focus-visible, +a:focus-visible { + outline: 1px solid var(--accent); + outline-offset: 2px; +} + +fieldset { + display: inline-block; + border: 2px solid var(--foreground); + border-radius: calc(var(--radius) * 1.6); + padding: 10px; +} + +fieldset *:first-child { + margin-top: 0; +} + +fieldset input, +fieldset select, +fieldset textarea, +fieldset label, +fieldset button { + margin-top: calc(var(--line-height) * 0.5); + width: 100%; +} + +label { + display: inline-block; +} + +label input { + margin-top: 0; +} + +input, +textarea, +select { + background: transparent; + color: var(--foreground); + border: 1px solid var(--foreground); + border-radius: var(--radius); + padding: 10px; + font: inherit; + appearance: none; +} + +input[type="checkbox"] { + width: auto; +} + +input:focus-visible, +input:active, +textarea:focus-visible, +textarea:active, +select:focus-visible, +select:active { + border-color: var(--accent); + outline: 1px solid var(--accent); + outline-offset: 2px; +} + +input:active, +textarea:active, +select:active { + box-shadow: none; +} + +select { + background-image: linear-gradient( + 45deg, + transparent 50%, + var(--foreground) 50% + ), + linear-gradient(135deg, var(--foreground) 50%, transparent 50%); + background-position: calc(100% - 20px), calc(100% - 15px); + background-size: + 5px 5px, + 5px 5px; + background-repeat: no-repeat; + padding-right: 40px; +} + +select option { + background: var(--background); +} + +input[type="checkbox"], +input[type="radio"] { + vertical-align: middle; + padding: 10px; + box-shadow: inset 0 0 0 3px var(--background); +} + +input[type="radio"] { + display: inline-block; + width: 10px !important; + height: 10px !important; + border-radius: 20px; +} + +input[type="checkbox"]:checked, +input[type="radio"]:checked { + background: var(--accent); +} + +img { + display: block; + max-width: 100%; + border: 8px solid var(--accent); + border-radius: var(--radius); + padding: 8px; + overflow: hidden; +} + +figure img, +figure video { + margin-bottom: 0; +} + +figure figcaption { + background: var(--accent); + color: var(--background); + text-align: center; + font-size: 1em; + font-weight: normal; + margin-top: -8px; + border-radius: 0 0 var(--radius) var(--radius); +} + +ul, +ol { + margin-left: 4ch; + padding: 0; +} + +ul ul, +ul ol, +ol ul, +ol ol { + margin-top: 0; +} + +li::marker { + color: var(--accent); +} + +ul li, +ol li { + position: relative; +} + +code, +kbd { + font-family: + "Fira Code", + "JetBrains Mono", + Monaco, + Consolas, + Ubuntu Mono, + monospace !important; + font-feature-settings: normal; + background: color-mix(in srgb, var(--foreground) 5%, transparent); + color: color-mix(in srgb, var(--foreground) 5%, var(--accent)); + padding: 0 6px; + margin: 0 2px; + font-size: 0.95em; +} + +code { + border: 1px solid color-mix(in srgb, var(--foreground) 25%, transparent); +} + +kbd { + border-top: 1px solid color-mix(in srgb, var(--accent) 25%, transparent); + border-left: 1px solid var(--accent); + border-right: 1px solid var(--accent); + border-bottom: 4px solid var(--accent); + border-radius: 4px; +} + +code code { + background: transparent; + padding: 0; + margin: 0; +} + +pre { + tab-size: 4; + background: color-mix(in srgb, var(--foreground) 5%, transparent) !important; + color: color-mix(in srgb, var(--foreground) 5%, var(--accent)); + padding: 20px 10px; + font-size: 0.95em !important; + overflow: auto; + border-radius: var(--radius); + border: 1px solid color-mix(in srgb, var(--foreground) 25%, transparent); +} + +pre code { + background: none !important; + margin: 0; + padding: 0; + font-size: inherit; + border: none; +} + +sup { + line-height: 0; +} + +abbr { + position: relative; + text-decoration-style: wavy; + text-decoration-color: var(--accent); + cursor: help; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.25em; +} + +mark { + background: color-mix(in srgb, var(--accent) 45%, transparent); + color: var(--foreground); +} + +blockquote { + position: relative; + border-top: 1px solid var(--accent); + border-bottom: 1px solid var(--accent); + margin: 0; + padding: 25px; +} + +blockquote:before { + content: ">"; + display: block; + position: absolute; + left: 0; + color: var(--accent); +} + +blockquote p:first-child { + margin-top: 0; +} + +blockquote p:last-child { + margin-bottom: 0; +} + +table { + table-layout: auto; + border-collapse: collapse; +} + +table, +th, +td { + border: 2px solid var(--foreground); + padding: 10px; +} + +th { + border-style: solid; + color: var(--foreground); + text-align: left; + text-transform: uppercase; + letter-spacing: 0.04em; +} + +hr { + width: 100%; + border: none; + background: var(--accent); + height: 2px; +} + +/* Bold elements */ + +h1, h2, h3, h4, h5, h6, +b, strong, +th, +button { + font-weight: 600; +} diff --git a/themes/terminal b/themes/terminal new file mode 160000 index 0000000..5a2b4c0 --- /dev/null +++ b/themes/terminal @@ -0,0 +1 @@ +Subproject commit 5a2b4c0f1fdb9180d525930b2c8f68a90221d245