diff --git a/archetypes/default.md b/archetypes/default.md index 00e77bd..ac36e06 100644 --- a/archetypes/default.md +++ b/archetypes/default.md @@ -1,6 +1,2 @@ ---- -title: "{{ replace .Name "-" " " | title }}" -date: {{ .Date }} -draft: true ---- - ++++ ++++ diff --git a/config.toml b/config.toml index 2dff8d5..01d6a69 100644 --- a/config.toml +++ b/config.toml @@ -1,29 +1,14 @@ baseURL = "https://no-js.club/" languageCode = 'en' -title = 'no-JS.club' +title = ' The no-JS.club ' disableHugoGeneratorInject = 'true' enableGitInfo = 'true' +[params] -[permalinks] -posts = "/log/:year/:title/" - -preserveTaxonomyNames = true -enableRobotsTXT = true - -[outputFormats] - [outputFormats.RSS] - baseName = 'rss' - isPlainText = false - mediaType = 'application/rss+xml' - protocol = 'https://' - -[outputs] - home = ['HTML'] - section = ['HTML'] - taxonomy = ['HTML'] - term = ['HTML'] - page = ['HTML'] +[params.theme] +palette = "gruvbox-dark" +mode = "dark-mode" [markup] [markup.highlight] @@ -85,13 +70,13 @@ enableRobotsTXT = true [menu] [[menu.main]] - name = "faq" + name = "FAQ" url = "/faq/" weight = 10 [[menu.main]] - name = "membership" - url = "https://todo.sr.ht/~hmbrg/no-JS" + name = "Membership Request" + url = "https://todo.sr.ht/~hmbrg/no-JS.club" weight = 20 [imaging] diff --git a/content/_index.md b/content/_index.md index cbd0171..7150160 100644 --- a/content/_index.md +++ b/content/_index.md @@ -2,7 +2,7 @@ The Internet as we find it today is, unfortunately, a completely bloated mess. -For this reason I welcome projects like the [1MB.club,](https://1MB.club) [512KB.club,](https://512KB.club) [250KB.club](https://250KB.club) and [noJS.club](https://noJS.club) very much! +For this reason I much welcome projects like the [1MB.club,](https://1MB.club) [512KB.club,](https://512KB.club) [250KB.club](https://250KB.club) and noJS.club! These clubs are provided lists of websites that meet certain criteria. Everybody can **free of charge** submit a request for the listing of his homepage and as soon as the request has been checked and confirmed, the respective list will be extended by the website. diff --git a/content/faq.md b/content/faq.md index 8649e06..e397338 100644 --- a/content/faq.md +++ b/content/faq.md @@ -4,7 +4,7 @@ date: "2021-09-01T13:03:54+02:00" draft: false --- -About the no-JS.club[https://no-JS.club] project +Below you find commonly asked question regarding the no-JS.club project and membership: {{< detail-tag "How to join the no-JS club?" >}} ## Instructions @@ -18,13 +18,13 @@ If you're interested in getting your site added to the no-JS club, all you need 3. Next click on the **"JS"** tab to make sure your homepage doesn't contain JS code -### 🙌 No JavaScript Detected 🙌 +### 🙌 Example Result Where No JavaScript Detected 🙌 ![Accepted domain - JS tab GTmetrix analyse result](/assets/no-js/accepted_gtmetrix_waterfall_js.webp) -### 😞 JavaScript Detected! 😞 +### 😞 Example Result Where JavaScript Was Detected! 😞 ![Denied domain - JS tab GTmetrix analyse result](/assets/no-js/denied_gtmetrix_waterfall_js.webp) -4. If your website satisfies the requirement, [submit a ticket 🎫 on sourcehut](https://todo.sr.ht/~hmbrg/no-JS) +4. If your website satisfies the requirement, [submit a ticket 🎫 on sourcehut](https://todo.sr.ht/~hmbrg/no-JS.club) ### Example Of A Filled Ticket ![sourcehut membership request ticket](/assets/no-js/membership-request-ticket.webp) @@ -33,13 +33,13 @@ If you're interested in getting your site added to the no-JS club, all you need Note: I reserve the right to not add sites based on whether I think they're suitable to be added or not -[Example ticket showcasing an accepted request 🙌](https://todo.sr.ht/~hmbrg/no-JS/1#event-1) +[Example ticket showcasing an accepted request 🙌](https://todo.sr.ht/~hmbrg/no-JS.club/1) -[Example ticket showcasing a denied request 😢](https://todo.sr.ht/~hmbrg/no-JS/2) +[Example ticket showcasing a denied request 😢](https://todo.sr.ht/~hmbrg/no-JS.club/2) {{< /detail-tag >}} {{< detail-tag "Wasn't the project as well as the website called noJS.club before?" >}} -Yes, you are right! But sadly because of reasons [Karan Goel](https://goel.io/nojs-club), the founder of the [noJS.club](https://noJS.club) project, archived the corresponding [GitHub repository](https://github.com/karan/nojs.club) which means that nobody is able to request for membership. +Yes, you are right! But sadly because of reasons [Karan Goel](https://goel.io), the founder of the [noJS.club](https://noJS.club) project, archived the corresponding [GitHub repository](https://github.com/karan/nojs.club) which means that nobody is able to request for membership. So the [no-JS.club](https://no-JS.club) is the successor to Karan's project and anyone interested in becoming a member can open a [ticket](https://todo.sr.ht/~hmbrg/no-JS) and apply for membership. {{< /detail-tag >}} @@ -49,10 +49,9 @@ Once your request is approved, the website mentioned via support ticket will bec {{< /detail-tag >}} {{< detail-tag "Will membership cost me anything?" >}} -Good that you ask - well, hm... **no!** +Good that you ask! [no-JS.club](https://no-js.club) **membership is absolutely free of charge**. -[no-JS.club](https://no-js.club) **membership is absolutely free of charge**. -We don't ask for money and don't expect anything else in return, **except the request for [membership](https://todo.sr.ht/~hmbrg/no-JS) via support ticket**. +We don't ask for money and don't expect anything else in return, **except the request for [membership](https://todo.sr.ht/~hmbrg/no-JS.club) via support ticket**. {{< /detail-tag >}} diff --git a/images/screenshot.png b/images/screenshot.png new file mode 100644 index 0000000..475685f Binary files /dev/null and b/images/screenshot.png differ diff --git a/images/tn.png b/images/tn.png new file mode 100644 index 0000000..2d0e330 Binary files /dev/null and b/images/tn.png differ diff --git a/layouts/404.html b/layouts/404.html index 7454cd4..e69de29 100644 --- a/layouts/404.html +++ b/layouts/404.html @@ -1,7 +0,0 @@ -{{ partial "header.html" . }} - -

Your page couldn't be found (Error 404)

-

Try going home?

- {{ partial "footer.html" . }} - - diff --git a/layouts/_default/_markup/render-link.html b/layouts/_default/_markup/render-link.html deleted file mode 100644 index 8171e38..0000000 --- a/layouts/_default/_markup/render-link.html +++ /dev/null @@ -1 +0,0 @@ -{{ .Text | safeHTML }} diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html index d08109d..d64c11b 100644 --- a/layouts/_default/baseof.html +++ b/layouts/_default/baseof.html @@ -1,26 +1,36 @@ - - - - - - - {{ with .OutputFormats.Get "rss" -}} - {{ printf `` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }} - {{ end -}} - - - {{ block "title" . }} - {{ .Site.Title }} - {{ end }} - - - - {{ partial "header.html" . }} - - {{ block "main" . }} - {{ end }} - - {{ partial "footer.html" . }} - + + + + {{- partial "head.html" . -}} + + + +
+ + + +
+ {{- block "main" . }}{{- end }} +
+ +
+
+ {{- partial "about.html" . -}} +
+
+
+ {{- block "aside" . }}{{- end }} +
+
+ + + +
+ + diff --git a/layouts/_default/li.html b/layouts/_default/li.html new file mode 100644 index 0000000..c85e091 --- /dev/null +++ b/layouts/_default/li.html @@ -0,0 +1 @@ +
  • {{ .Title | markdownify }}
  • diff --git a/layouts/_default/list.html b/layouts/_default/list.html index eb0755d..37742ef 100644 --- a/layouts/_default/list.html +++ b/layouts/_default/list.html @@ -1,18 +1,12 @@ {{ define "main" }} -
    -
    -
    -

    {{.Title}}

    -
    - {{.Content}} -
    +

    {{ .Title | markdownify }}

    + + {{ .Content }} + -
    + {{ end }} diff --git a/layouts/_default/rss.xml b/layouts/_default/rss.xml deleted file mode 100644 index 59e07a3..0000000 --- a/layouts/_default/rss.xml +++ /dev/null @@ -1,39 +0,0 @@ -{{- $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 -}} -{{- printf "" | safeHTML }} - - - {{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{.}} on {{ end }}{{ .Site.Title }}{{ end }} - {{ .Permalink }} - Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{.}} {{ end }}{{ end }}on {{ .Site.Title }} - Hugo -- gohugo.io{{ with .Site.LanguageCode }} - {{.}}{{end}}{{ with .Site.Author.email }} - {{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}}{{ with .Site.Author.email }} - {{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}}{{ with .Site.Copyright }} - {{.}}{{end}}{{ if not .Date.IsZero }} - {{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}{{ end }} - {{- with .OutputFormats.Get "RSS" -}} - {{ printf "" .Permalink .MediaType | safeHTML }} - {{- end -}} - {{ range where (where .Site.Pages ".Section" "posts") "Kind" "page" }} - - {{ .Title }} - {{ .Permalink }} - {{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }} - {{ with .Site.Author.email }}{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}} - {{ .Permalink }} - {{ .Content | html }} - - {{ end }} - - diff --git a/layouts/_default/single.html b/layouts/_default/single.html index 56b7d06..4dc326a 100644 --- a/layouts/_default/single.html +++ b/layouts/_default/single.html @@ -1,6 +1,19 @@ {{ define "main" }} -

    {{ .Title }}

    - {{ .Content }}
    - {{ partial "tags.html" .}}
    - This page was last updated on: {{ .Lastmod.Format "2. January 2006" }}

    +
    +

    {{ .Title | markdownify }}

    +
    +
    + {{ .Content }} +
    + +{{ end }} + +{{define "aside" }} + {{ if .Params.description }}

    {{ .Params.description }}

    {{ end }} + {{ if or (.Params.author) (.Params.date) }} +

    + {{ if .Params.author }}By {{ .Params.author }}{{ if .Date }}, {{ end }}{{ end }} + {{ if .Date }}{{ .Date.Format "2006-01-02" }}{{ end }} +

    + {{ end }} {{ end }} diff --git a/layouts/index.html b/layouts/index.html index 2187efa..c346e42 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -1,15 +1,4 @@ {{ define "main" }} - -{{ .Content }} - + {{ .Content }} {{ end }} -{{ end }} diff --git a/layouts/partials/about.html b/layouts/partials/about.html new file mode 100644 index 0000000..6c6e1bc --- /dev/null +++ b/layouts/partials/about.html @@ -0,0 +1,15 @@ +{{ with .Site.Params.about }} +
    + {{ with .logo }}{{ end }} +

    {{ .title }}

    +{{ with .description }}

    {{ . | markdownify }}

    {{ end }} +
    +{{ end }} + + diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html index a13ef77..d7c2b06 100644 --- a/layouts/partials/footer.html +++ b/layouts/partials/footer.html @@ -1,9 +1,14 @@ -{{ block "footer" . }} - -{{ end }} +

    + +

    +The no-JS Club was created by Frank Homburg and is the successor of Karan Goel's now archived project, The noJS Club. +

    + +

    +Maintained with 💜 for a lighter-footed and JavaScript freer Internet. +

    diff --git a/layouts/partials/head.html b/layouts/partials/head.html new file mode 100644 index 0000000..4552365 --- /dev/null +++ b/layouts/partials/head.html @@ -0,0 +1,12 @@ +{{ with .Title }}{{ . }} – {{end}}{{ .Site.Title }} +{{ with .Site.Params.about }}{{ end }} + + + + + + + + + + diff --git a/layouts/partials/header.html b/layouts/partials/header.html index 394c814..103ea8d 100644 --- a/layouts/partials/header.html +++ b/layouts/partials/header.html @@ -1,12 +1,10 @@ -{{ block "header" . }} -
    - {{ .Site.Title }} - -
    -{{ end }} + diff --git a/layouts/partials/link.html b/layouts/partials/link.html deleted file mode 100644 index 1a3d8b3..0000000 --- a/layouts/partials/link.html +++ /dev/null @@ -1 +0,0 @@ -{{ . }} diff --git a/layouts/partials/tags.html b/layouts/partials/tags.html deleted file mode 100644 index 77b9c26..0000000 --- a/layouts/partials/tags.html +++ /dev/null @@ -1,6 +0,0 @@ -{{- with .Params.tags -}} -
    - Tags: - {{ delimit (apply (apply (sort . ) "partial" "link" ".") "chomp" ".") ", " }} -
    -{{- end -}} diff --git a/layouts/post/list.html b/layouts/post/list.html new file mode 100644 index 0000000..027e282 --- /dev/null +++ b/layouts/post/list.html @@ -0,0 +1,22 @@ +{{ define "main" }} +
    +

    {{ .Title | markdownify }}

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

    {{ .Title | markdownify }}

    + +
    + +
    + {{ .Summary }} +
    +
    + {{ end }} +{{ end }} diff --git a/layouts/robots.txt b/layouts/robots.txt deleted file mode 100644 index b5bc12d..0000000 --- a/layouts/robots.txt +++ /dev/null @@ -1,17 +0,0 @@ -User-agent: Googlebot -Disallow: / - -User-agent: Googlebot-Image -Disallow / - -User-agent: Googlebot-News -Disallow / - -User-agent: Googlebot-Video -Disallow / - -User-agent: Mediapartners-Google -Disallow / - -User-agent: Google -Disallow: / diff --git a/layouts/shortcodes/csv-table.html b/layouts/shortcodes/csv-table.html index 59e329d..51b2c5d 100644 --- a/layouts/shortcodes/csv-table.html +++ b/layouts/shortcodes/csv-table.html @@ -15,8 +15,8 @@ padding-top: 12px; padding-bottom: 12px; text-align: left; - background-color: #658D36; - color: white; + background-color: #98971A; + color: #1D2021; } diff --git a/layouts/tags/terms.html b/layouts/tags/terms.html deleted file mode 100644 index 912b678..0000000 --- a/layouts/tags/terms.html +++ /dev/null @@ -1,15 +0,0 @@ -{{ define "main" }} -
    -
    -

    Tags, sorted by age of content

    -
    -{{ $taxo := "tags" }} - -
    -{{ end }} diff --git a/public/404.html b/public/404.html deleted file mode 100644 index 485dbb7..0000000 --- a/public/404.html +++ /dev/null @@ -1,30 +0,0 @@ - -
    - no-JS.club - - -
    - - - -

    Your page couldn't be found (Error 404)

    -

    Try going home?

    - - - - - - diff --git a/public/assets/gpg/hi.asc b/public/assets/gpg/hi.asc deleted file mode 100644 index 82325ef..0000000 --- a/public/assets/gpg/hi.asc +++ /dev/null @@ -1,64 +0,0 @@ ------BEGIN PGP PUBLIC KEY BLOCK----- - -mQINBGE3dcEBEADWS/Cdd7Xl385I2YpruxUuuTeS84Bn4W808aiz2mj3z/D5gQJC -kfoqxiySDSWMP/UEC/cXYSiqbvBratQIs54wkzAlYP6syk/RcIsH6gKb4N2CTpQA -dI9YwpwPcUVU+IkMQqoi/I0vI5YOYHnCvPJU8UzgkoNKb6x7fUgp6eQgxOCo4qiu -+g0A5gXBX3aV9IRG7dxD2mBJR4KzCh39elt4zkUhus2qF2bZ50Z67VZn5Tn7qBvv -XOmddfyrM3C5b/p73sRWQCnHaFVblttaVJtRpbC2YDjpex7Gv3MrM2ZN2fyhqbcx -8HLHHxrFEsVUbYuW3+nCGjjpNexSoce1zAqrYMHVros8190W/Lr9qnlq76aT4B0r -xwq1ugniV8kTslUPbdKkzFBjK1jcWQbNoxFEJptkAh+CcZYyV1dxpjwqQOKJQ2LC -T3JFUbEC1blJxlpdu9iZ8R3KoUnZne9n1SaBTXu7M7F1xX+idPXjSXMt6qRyFIsc -4sr3KznWZSX9avhm3BuDhugafrYmsUiPkpawNZi7JQ/w4AlPOWKNsCs4VLmkkZ4v -fO0dBZttmBmh+BVKh6lWtT1Q74uS9v18wmwcTFrjvL691CGe0UCASqbS0sLaGcHd -U7PqrSt+aB5EmHxlEAJpjAlmWWCRxklmzIIpYqPKOiqf2cr8V4wQrAThtwARAQAB -tB9GcmFuayBIb21idXJnIDxmcmFua0BobWJyZy54eXo+iQJOBBMBCAA4FiEE0vvG -wPOUhjBWN0mNXt8bBcisL5QFAmE3dcECGwMFCwkIBwIGFQoJCAsCBBYCAwECHgEC -F4AACgkQXt8bBcisL5T5ZA/8Ch1Qaz1hcFcXFouMjhCR/SU46mqX5+PWkLu5NW5N -3vFYwY9VORPnNXXE+DlIZoKtUdRgnyHWbg8PWTaBRRtgwov7WRps2oVC1AU/EbzQ -ZuHXQK/dewMR1eg/UnatGovWun/lgFhHStfl7QmmZbAsjBQqQnsS2TyByVfBvl1N -ENkyIB4cAcAEXvjyCq/QHzOw7wmmlErPp+fZJVdpckZi67Tn1bW/pUB8T1ae7rdy -LohuoJlFqJmbEpVFKEITyEW8LpWjf1tLi+JGsK8IP7DvpVSEuv20E5pggMEIry1G -n9iIZlc+fIH+lpdjnCJRMU6Y2nwVMs0fcWRTL/BXuM39qJREFFcXMv5R1pfFtCUv -n4dm3TWCGsuHY+enI483mofGKRf85WbiNrbAJzwt0kVqJl0pqgUgJFNJXpzQBHOO -0QmbgXClRm3zx5iIvK+gJG2+bi1hqU8xZ+yKImhdElxKE1xBaF2NxccbjqhfAmba -pWn36JB1sKQBc/cg4qZVWGEfWjRADzmWobizVBcYzwDVCg0SXq69AcoaMfeO/SJe -xgv8KxN+qW5JouPMjss5IQ51ZTKyBcS5wyJSqRxMNqvOhEbRBwPTqEyUfL/vzCSA -bKA1oNeTggL0kCHbNbj+Pt3/0M9Y/guXme34jQ5zSMIJVnDxuhnRR2BwRabnuNUD -FS60FmhpaG1icmcgPGhpQGhtYnJnLnh5ej6JAk4EEwEIADgWIQTS+8bA85SGMFY3 -SY1e3xsFyKwvlAUCYVhscAIbAwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAKCRBe -3xsFyKwvlIqkD/9YF4gln2APEfU3TgmbjJHKEW5pjFinpwyzj1We9A2UFELXeehZ -LwTUUcAemExewOCv0eIe30zirLhNBDVHpFwSYQh0lEDIKFlMjy2C7NuI1xAZGOqj -fcWsdhrzBpADgSieMPG/ERE3LIThhq9jXwitkbWYcYKqmsnTuWNKwb13SPQCUzG3 -a3OqLxgqXffIUvxjKBMox5YlXt+v3+J8myHotCcMzZgv+1LXhyHIvVaXPc1aiQTJ -8ai68Cs91uD1WSw0DeI3WqR1m+RnOBqZC1MT2fdG5JY8u1m+qeUPQFUW7ENstvmd -rrdjqjEF1TPOLX32MVclOF2Ltqq3Ms1NtigR6HEnh94K5xhTD3u5mT8n+Zq0ly3V -fH29pUC1+VAKC9jVA8te/13zQmKwJzRQASpcvuz2slOot1h4am34GoU91vNV7pgl -m8F/GCPanQ75SMHNXORC2sTIMrho80rNCpvusOgssrdk1sZD/EpqnjfQXI+QIPdk -TNn7SDO9UL/IcqIZCjmsNNvLEryCLUEQFI1omuYRyzqBInuBhVTinVaQV5WWfi0e -3NFAhgomxqZ6RkYJnOeIOpIAk0BFZWHbP7U0hRCznMw5iDntN96C88OyTrdeCGhS -J66YMfkSihMOAelyvVQy+5E69L7QT8pi8eAyNrhpXPy9dmYyLO8y/lH737kCDQRh -N3XBARAA4Oo+51thlEWdzrOUCULuMhtSoNRmuTeP7ADxBH5+ka0+nAetDMz1Lqvg -JwbusXKaWmIpeh5rijmmxCLK9AiAPRVFrFWgAkcAyaAvtwRMH9dTAnu6HXVJOORi -zIsia4ELAxFWwtgc01Ckk81OqwoHIEqT/ecd3oB4zUFfDGUiNCnZ45Ut+cVDqb1y -a95KHwjbq9bVjjxTeZ/HhTI3WvWujtRhxeffaa9+gfMiGwcqXTgUoMo6AC9wMXaE -wuDuJJEcAl5F0bzQAeUcRuTkUBitim+D4bICh7rIgRRWnUEoOkMAnuousP6g/elK -Qs7sGCCQlCnu+JHWtN4T0TmhTaH8S1akm7uXE3KWChqHUcpOSfUNnCsa4tV659On -ATXhmACQJFacH35T3E2NixCDfQ9O39ztDFYDujGHMMNqugB9wUoGY/KAGVZJNgin -gbeFfKyFqBkGN1U5U02hCqT7oMHO07xcLHlPswiTnm9DcM0Dg8zcyQa/Y4BBWIZq -GX41Zt+xvqtBIVlXhOp1XLnjBVpRNQZTF2g3kq310EYcAP7H/EkiPE03bKWkCSbH -tA5uIGxPIUp1ZlPHXBbM2E+x58lyToKaQ5IaQQq4Y4B7sHzwwh+3DznDPeusZkGi -uCbXPfLeYqK5TMgMpZwvALxA4QqsVOrcFoN9xfxmaafFuVqRpqsAEQEAAYkCNgQY -AQgAIBYhBNL7xsDzlIYwVjdJjV7fGwXIrC+UBQJhN3XBAhsMAAoJEF7fGwXIrC+U -HbkP/3hIVxGuUuFsbSQh2rcShaRZWgJ5ovjLToMrgy7OMhdmT/um7WafCvsHrcXE -D6toVgHcxFco3eDFJSQi506sq7t985FPczjusfkMjybu+e/67mmWZ5eRhUm8lsn9 -9TZmdO2qJVWU4BuEjsRGQ+ELlV2QRpPZBjonCRVzcCFBnuUeW47klVrn/od+ov7E -iIwrdLce1P0yNukCxIEwKBKshK/oldSUg9ru7uAfJrLcKSSisQLbBYvqNzqPrl6x -E7UqzShP2LJ3Ck/7R7ymNG2gPJsWlWe7cB+FIS1Ye2F2qiuhtFSViZl2iJvP2OfH -mTsiN8deCvwRwv52Oyh5tGpNX34Yc5wiPOMKh0dLsM8cpV4tsb5SoczpdT7FiTZJ -Dxzj9FiTH52VjFw2ZcZL9VIDSxNg22ZcyueGrwZBr9Ph8T6PG66pFaMcyddLfTGo -iNakQ1LeUtzLxoYOkiarWHZCRfgF2OMTZkYO4nQqhl3qGJ2aTAiOUNviD3I9FNmA -fAXAyigSK+J3ya9yyZDO8v67z+xccsOVGrDdHS4FcqAeP5RWOWWcgUyJrvH2m2L7 -gf1Ru104u3UGDfDoRITn/YhkiN0KVdmimk3Kj8O2ipAKgoL7Z7uW/KgI3P/aLCgD -Ni3cubRCW1XhOhmI9m9oXe0GN2/lnCRFlY4a9fRbs8iNxBRf -=qEHX ------END PGP PUBLIC KEY BLOCK----- diff --git a/public/assets/img/prtrt.webp b/public/assets/img/prtrt.webp deleted file mode 100644 index d67e829..0000000 Binary files a/public/assets/img/prtrt.webp and /dev/null differ diff --git a/public/assets/no-js/data/out.csv b/public/assets/no-js/data/out.csv index d4a8c0a..b8d02b0 100644 --- a/public/assets/no-js/data/out.csv +++ b/public/assets/no-js/data/out.csv @@ -31,7 +31,7 @@ https://richj.co,48.0 https://darioniedermann.it,26.7 https://zakaria.org,299.0 https://sr.ht,131.0 -https://starbreaker.org,33.5 +https://starbreaker.org,45.4 https://ethanyoo.com,37 https://mos6581.com,38.0 https://lucianmarin.com,41.8 diff --git a/public/categories/index.html b/public/categories/index.html index 1ebafd4..0dcad09 100644 --- a/public/categories/index.html +++ b/public/categories/index.html @@ -1,56 +1,78 @@ - - - - - - - - no-JS.club - - - - - -
    - no-JS.club -
    +
    +

    Categories

    -
    -
    -
    -

    Categories

    -
    - -
    + -
    +
    + +
    +
    + + +
    +
    +
    +
    +
    + + + + - diff --git a/public/categories/index.xml b/public/categories/index.xml new file mode 100644 index 0000000..94ec89c --- /dev/null +++ b/public/categories/index.xml @@ -0,0 +1,10 @@ + + + + Categories on The no-JS.club + https://no-js.club/categories/ + Recent content in Categories on The no-JS.club + Hugo -- gohugo.io + en + + diff --git a/public/css/about.css b/public/css/about.css new file mode 100644 index 0000000..6c12ba4 --- /dev/null +++ b/public/css/about.css @@ -0,0 +1,26 @@ +/* About/bio section */ +.about__logo { + height: 1.5rem; +} + +.about__title { + display: inline; + vertical-align: top; +} + +.about__title::before { + content: none; +} + +/* Social media links */ +.aside__social-links { + padding: 0; +} + +.aside__social-links li { + display: inline-block; +} + +.aside__social-links li::marker { + content: none; +} diff --git a/public/css/colour/dark-mode.css b/public/css/colour/dark-mode.css new file mode 100644 index 0000000..386f99d --- /dev/null +++ b/public/css/colour/dark-mode.css @@ -0,0 +1,7 @@ +:root { + --bg: var(--black); + --dark-bg: var(--dark-black); + --bright-bg: var(--bright-black); + --fg: var(--white); + --bright-fg: var(--bright-white); +} diff --git a/public/css/colour/gruvbox-dark.css b/public/css/colour/gruvbox-dark.css new file mode 100644 index 0000000..aa1785f --- /dev/null +++ b/public/css/colour/gruvbox-dark.css @@ -0,0 +1,29 @@ +/* gruvbox dark mode + * https://github.com/morhetz/gruvbox + */ +:root { + --dark-black: #1d2021; + --black: #282828; + --bright-black: #928374; + + --white: #ebdbb2; + --bright-white: #fbf1c7; + + --red: #cc241d; + --green: #98971a; + --yellow: #d3869b; + --blue: #458588; + --magenta: #b16286; + --cyan: #689d6a; + --orange: #d65d0e; + --gray: #928374; + + --bright-red: #fb4934; + --bright-green: #b8bb26; + --bright-yellow: #fabd2f; + --bright-blue: #83a598; + --bright-magenta: #d3869b; + --bright-cyan: #8ec07c; + --bright-orange: #fe8019; + --bright-gray: #a89984; +} diff --git a/public/css/colour/gruvbox-light.css b/public/css/colour/gruvbox-light.css new file mode 100644 index 0000000..cff8fa3 --- /dev/null +++ b/public/css/colour/gruvbox-light.css @@ -0,0 +1,30 @@ +/* gruvbox light mode + * https://github.com/morhetz/gruvbox + */ +:root { + --dark-black: #282828; + --black: #3c3836; + --bright-black: #928374; + + --white: #fbf1c7; + --bright-white: #f9f5d7; + + --red: #9d0006; + --green: #79740e; + --yellow: #b57614; + --blue: #076678; + --magenta: #8f3f71; + --cyan: #427b58; + --orange: #af3a03; + --gray: #7c6f64; + + --dark-white: #f2e5bc; + --bright-red: #cc241d; + --bright-green: #98971a; + --bright-yellow: #d79921; + --bright-blue: #458588; + --bright-magenta: #b16286; + --bright-cyan: #689d6a; + --bright-orange: #d65d0e; + --bright-gray: #928374; +} diff --git a/public/css/colour/light-mode.css b/public/css/colour/light-mode.css new file mode 100644 index 0000000..3ac2827 --- /dev/null +++ b/public/css/colour/light-mode.css @@ -0,0 +1,7 @@ +:root { + --bg: var(--white); + --dark-bg: var(--dark-white); + --bright-bg: var(--bright-black); + --fg: var(--black); + --bright-fg: var(--bright-black); +} diff --git a/public/css/custom.css b/public/css/custom.css new file mode 100644 index 0000000..71949ed --- /dev/null +++ b/public/css/custom.css @@ -0,0 +1 @@ +/* Override this file to customise the theme's CSS for your site */ diff --git a/public/css/footer.css b/public/css/footer.css new file mode 100644 index 0000000..3c5d6e9 --- /dev/null +++ b/public/css/footer.css @@ -0,0 +1,7 @@ +.page__footer { + color: var(--bright-bg); +} + +.page__footer p { + margin: 0; +} diff --git a/public/css/header.css b/public/css/header.css new file mode 100644 index 0000000..875201b --- /dev/null +++ b/public/css/header.css @@ -0,0 +1,18 @@ +/* Main menu */ +.main-nav ul { + display: flex; + flex-flow: row wrap; + justify-content: flex-start; + margin: 0; + padding: 0.25rem 0; +} + +.main-nav li { + margin-left: 2.5rem; + text-transform: lowercase; +} + +.main-nav li::marker { + content: "./"; +} + diff --git a/public/css/layout.css b/public/css/layout.css new file mode 100644 index 0000000..c078893 --- /dev/null +++ b/public/css/layout.css @@ -0,0 +1,64 @@ +/* 1rem = 16px by default */ + +.page { + max-width: 64rem; + margin: 1rem auto; + display: grid; + grid-template-areas: + "header" + "body" + "aside" + "footer"; + grid-template-columns: minmax(0, 1fr); /* https://css-tricks.com/preventing-a-grid-blowout/ */ + grid-row-gap: 2rem; +} + +@media (min-width: 45rem) { + .page { + grid-template-areas: + "header header" + "body aside" + "footer footer"; + grid-template-columns: minmax(0, 1fr) 15rem; + grid-column-gap: 2rem; + } +} + +/* Header */ +.page__header { + grid-area: header; + display: flex; +} + +.page__logo { + flex-shrink: 0; +} + +.page__nav { + flex-grow: 1; +} + +/* Body + aside */ +.page__body { + grid-area: body; + background-color: var(--bg); + box-shadow: 0 0 0 1rem var(--bg); + overflow-wrap: break-word; +} + +.page__aside { + grid-area: aside; + color: var(--bright-bg); +} + +/* Footer */ +.page__footer { + grid-area: footer; + max-width: 64rem; + margin: 1rem auto; + display: grid; + grid-template-areas: + "footer"; + grid-template-columns: minmax(0, 1fr); /* https://css-tricks.com/preventing-a-grid-blowout/ */ + grid-row-gap: 2rem; +} diff --git a/public/css/logo.css b/public/css/logo.css new file mode 100644 index 0000000..be24b86 --- /dev/null +++ b/public/css/logo.css @@ -0,0 +1,36 @@ +.page__logo { + padding: 0; + margin: 0; + font-weight: inherit; + color: var(--bg); +} + +.page__logo:before { + content: none; +} + +.page__logo-inner { + display: block; + background: var(--green); + padding: 0.25rem; +} + +a.page__logo-inner:link, a.page__logo-inner:visited { + color: inherit; + text-decoration: inherit; +} + +a.page__logo-inner:hover, +a.page__logo-inner:active { + background: var(--bright-green); +} + +.page__logo-inner:before { + content: "["; + color: var(--bg); +} + +.page__logo-inner:after { + content: "] $"; + color: var(--bg); +} diff --git a/public/css/risotto.css b/public/css/risotto.css new file mode 100644 index 0000000..3c2969d --- /dev/null +++ b/public/css/risotto.css @@ -0,0 +1,11 @@ +@import 'typography.css'; +@import 'layout.css'; +@import 'header.css'; +@import 'logo.css'; +@import 'about.css'; +@import 'footer.css'; + +body { + background-color: var(--dark-bg); + color: var(--fg); +} diff --git a/public/css/typography.css b/public/css/typography.css new file mode 100644 index 0000000..5a2c044 --- /dev/null +++ b/public/css/typography.css @@ -0,0 +1,214 @@ +/* Fonts */ +:root { + --font-monospace: "Fira Mono", monospace; +} + +body { + font-family: var(--font-monospace); + font-size: 16px; + line-height: 1.5rem; +} + +/* Headings */ +h1, +h2, +h3, +h4, +h5, +h6 { + font-size: 1rem; + margin: 1.5rem 0 0 0; + font-weight: 600; +} + +h1+h2, +h1+h3, +h1+h4, +h1+h5, +h1+h6, +h2+h3, +h2+h4, +h2+h5, +h2+h6, +h3+h4, +h3+h5, +h3+h6, +h4+h5, +h4+h6, +h5+h6 { + margin: 0; +} + +h1:before { content: "# "; } +h2:before { content: "## "; } +h3:before { content: "### "; } +h4:before { content: "#### "; } +h5:before { content: "##### "; } +h6:before { content: "###### "; } + +h1:before, +h2:before, +h3:before, +h4:before, +h5:before, +h6:before { + color: var(--bright-bg); +} + +h1:first-child { + margin-top: 0; +} + +/* Paragraphs */ +p { + margin: 0 0 1.5rem 0; +} + +/* Links */ + +a:link, a:visited { + color: var(--fg); +} + +a:hover, a:active { + color: var(--bright-fg); +} + +/* Lists */ +ul { + margin: 0 0 1.5rem 0; + padding-left: 1.25rem; +} + +ol { + margin: 0 0 1.5rem 0; + padding-left: 1.75rem; +} + +ul ul, +ul ol, +ol ul, +ol ol { + margin: 0; +} + +ul li::marker { + content: '∗\00A0'; + color: var(--bright-bg); +} + +ol li::marker { + color: var(--bright-bg); +} + +dt { + margin: 0; + font-weight: bold; +} + +dd { + margin: 0 0 0 1.5rem; + font-style: italic; +} + +dd + dt { + margin-top: 1.5rem; +} + +dl { + margin: 0 0 1.5rem 0; +} + +/* Blockquotes */ +blockquote { + position: relative; + margin: 0 0 1.5rem 1.5rem; +} + +blockquote::before { + position: absolute; + left: -1.5rem; + content: ">"; + color: var(--bright-bg); +} + +.twitter-tweet::before { + content: "\f099"; + font-family: "Font Awesome 5 Brands"; + font-weight: 400; +} + +/* Code */ +pre, +code, +kbd, +samp { + background: var(--dark-bg) !important; + font-family: var(--font-monospace); + color: var(--bright-bg); +} + +pre { + overflow-x: auto; + padding: 1.5rem; + margin: 0 0 1.5rem 0; +} + +/* Emphasis */ +b, +strong { + font-weight: 600; +} + +/* Highlighting */ +::selection, +mark { + background-color: var(--yellow); + color: var(--bg); +} + +/* Other typographic elements */ +hr { + border: 0; + margin-bottom: 1.5rem; +} + +hr:after { + content: '---'; + color: var(--bright-bg); +} + + +/* Prevent super/sub from affecting line height */ +sup, sub { + vertical-align: baseline; + position: relative; + top: -0.25rem; + font-size: unset; +} +sub { + top: 0.25rem; +} + +/* Tables */ +table { + border-spacing: 0; + margin: 0 0 1.5rem 0; + overflow-wrap: anywhere; +} +th, td { + padding: 0 .75rem; + vertical-align: top; +} +th:first-child, td:first-child { + padding-left: 0; +} +th { + text-align: inherit; +} + +/* Figures */ +img { + max-width: 100%; + height: auto; +} diff --git a/public/faq/index.html b/public/faq/index.html index 55aae1f..46370f9 100644 --- a/public/faq/index.html +++ b/public/faq/index.html @@ -1,44 +1,50 @@ - - - - - - - - no-JS.club - - - - - -
    - no-JS.club -
    - -

    FAQ

    -

    About the no-JS.club[https://no-JS.club] project

    +
    +
    +

    FAQ

    +
    +
    +

    Below you find commonly asked question regarding the no-JS.club project and membership:

    How to join the no-JS club?

    Instructions

    If you’re interested in getting your site added to the no-JS club, all you need to do is to follow this step-by-step guide:

    1. -

      🤞 Use GTMetrix - to analyse your website 🤞

      +

      🤞 Use GTMetrix to analyse your website 🤞

    2. Once complete, click on “Waterfall” and note 📝 the uncompressed size of transfered data

      @@ -48,13 +54,12 @@
      1. Next click on the “JS” tab to make sure your homepage doesn’t contain JS code
      -

      🙌 No JavaScript Detected 🙌

      +

      🙌 Example Result Where No JavaScript Detected 🙌

      Accepted domain - JS tab GTmetrix analyse result

      -

      😞 JavaScript Detected! 😞

      +

      😞 Example Result Where JavaScript Was Detected! 😞

      Denied domain - JS tab GTmetrix analyse result

        -
      1. If your website satisfies the requirement, submit a ticket 🎫 on sourcehut -
      2. +
      3. If your website satisfies the requirement, submit a ticket 🎫 on sourcehut

      Example Of A Filled Ticket

      sourcehut membership request ticket

      @@ -62,38 +67,27 @@
    3. Once your request is approved, the domain will be added to the member list below

    Note: I reserve the right to not add sites based on whether I think they’re suitable to be added or not

    -

    Example ticket showcasing an accepted request 🙌 -

    -

    Example ticket showcasing a denied request 😢 -

    +

    Example ticket showcasing an accepted request 🙌

    +

    Example ticket showcasing a denied request 😢

    Wasn’t the project as well as the website called noJS.club before? -

    Yes, you are right! But sadly because of reasons Karan Goel -, the founder of the noJS.club - project, archived the corresponding GitHub repository - which means that nobody is able to request for membership.

    -

    So the no-JS.club - is the successor to Karan’s project and anyone interested in becoming a member can open a ticket - and apply for membership.

    +

    Yes, you are right! But sadly because of reasons Karan Goel, the founder of the noJS.club project, archived the corresponding GitHub repository which means that nobody is able to request for membership.

    +

    So the no-JS.club is the successor to Karan’s project and anyone interested in becoming a member can open a ticket and apply for membership.

    When will I become a member? - Once your request is approved, the website mentioned via support ticket will become a proud member of the no-JS.club - and will be listed on the front page of the project website. + Once your request is approved, the website mentioned via support ticket will become a proud member of the no-JS.club and will be listed on the front page of the project website.
    Will membership cost me anything? -

    Good that you ask - well, hm… no!

    -

    no-JS.club - membership is absolutely free of charge. -We don’t ask for money and don’t expect anything else in return, except the request for membership - via support ticket.

    +

    Good that you ask! no-JS.club membership is absolutely free of charge.

    +

    We don’t ask for money and don’t expect anything else in return, except the request for membership via support ticket.

    @@ -102,20 +96,49 @@ We don’t ask for money and don’t expect anything else in return, no-JS {at} hmbrg {dot} org. -
    -
    - This page was last updated on: 22. April 2022

    +
    + +
    + +
    +
    + + +
    +
    +
    - +
    + + + + - diff --git a/public/images/rice.svg b/public/images/rice.svg new file mode 100644 index 0000000..53e480c --- /dev/null +++ b/public/images/rice.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/index.html b/public/index.html index 5839140..e15b45d 100644 --- a/public/index.html +++ b/public/index.html @@ -1,41 +1,44 @@ - - - - - - - - no-JS.club - - - - - -
    - no-JS.club -
    -

    Welcome To The no-JS.club Project

    -

    The Internet, as we have to experience it today, is an unnecessarily inflated creature.

    -

    Far too often, mechanisms are used that are absolutely unnecessary. Have we forgotten the tools of the early days and their ease of use?

    -

    Nowadays, also for the private homepage, because everything is so nicely clickable, one quickly reaches for top dogs like WordPress. Quickly click a few plug-ins and the data sling is ready. The visitor of the website is gifted with several hundred kilo bytes, or more, of JavaScript - thank you, but NO thank you.

    -

    And here comes the reborn no-JS.club into play. If you don’t use JavaScript on your homepage, gift your website a free membership in the no-JS.club.

    -

    List Of Proud Club Members

    +
    +

    Welcome To The no-JS.club Project

    +

    The Internet as we find it today is, unfortunately, a completely bloated mess.

    +

    For this reason I much welcome projects like the 1MB.club, 512KB.club, 250KB.club and noJS.club!

    +

    These clubs are provided lists of websites that meet certain criteria. Everybody can free of charge submit a request for the listing of his homepage and as soon as the request has been checked and confirmed, the respective list will be extended by the website.

    +

    Inspired by these projects and driven by the fact that the GitHub repository of the noJS.club has been archived by its founder Karan Goel and thus unfortunately no new membership application can be submitted, I am succeeding him with the no-JS.club.

    +

    ## List Of Proud Club Members

    @@ -235,7 +238,7 @@ - + @@ -370,22 +373,40 @@
    https://starbreaker.org33.545.4
    +

    - + + +
    +
    + + +
    +
    +
    +
    +
    + + + + - diff --git a/public/tags/index.xml b/public/tags/index.xml new file mode 100644 index 0000000..8d8ff88 --- /dev/null +++ b/public/tags/index.xml @@ -0,0 +1,10 @@ + + + + Tags on The no-JS.club + https://no-js.club/tags/ + Recent content in Tags on The no-JS.club + Hugo -- gohugo.io + en + + diff --git a/static/assets/gpg/hi.asc b/static/assets/gpg/hi.asc deleted file mode 100644 index 82325ef..0000000 --- a/static/assets/gpg/hi.asc +++ /dev/null @@ -1,64 +0,0 @@ ------BEGIN PGP PUBLIC KEY BLOCK----- - -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 -=qEHX ------END PGP PUBLIC KEY BLOCK----- diff --git a/static/assets/img/prtrt.webp b/static/assets/img/prtrt.webp deleted file mode 100644 index d67e829..0000000 Binary files a/static/assets/img/prtrt.webp and /dev/null differ diff --git a/static/assets/no-js/data/out.csv b/static/assets/no-js/data/out.csv index d4a8c0a..b8d02b0 100644 --- a/static/assets/no-js/data/out.csv +++ b/static/assets/no-js/data/out.csv @@ -31,7 +31,7 @@ https://richj.co,48.0 https://darioniedermann.it,26.7 https://zakaria.org,299.0 https://sr.ht,131.0 -https://starbreaker.org,33.5 +https://starbreaker.org,45.4 https://ethanyoo.com,37 https://mos6581.com,38.0 https://lucianmarin.com,41.8 diff --git a/static/css/about.css b/static/css/about.css new file mode 100644 index 0000000..6c12ba4 --- /dev/null +++ b/static/css/about.css @@ -0,0 +1,26 @@ +/* About/bio section */ +.about__logo { + height: 1.5rem; +} + +.about__title { + display: inline; + vertical-align: top; +} + +.about__title::before { + content: none; +} + +/* Social media links */ +.aside__social-links { + padding: 0; +} + +.aside__social-links li { + display: inline-block; +} + +.aside__social-links li::marker { + content: none; +} diff --git a/static/css/colour/dark-mode.css b/static/css/colour/dark-mode.css new file mode 100644 index 0000000..386f99d --- /dev/null +++ b/static/css/colour/dark-mode.css @@ -0,0 +1,7 @@ +:root { + --bg: var(--black); + --dark-bg: var(--dark-black); + --bright-bg: var(--bright-black); + --fg: var(--white); + --bright-fg: var(--bright-white); +} diff --git a/static/css/colour/gruvbox-dark.css b/static/css/colour/gruvbox-dark.css new file mode 100644 index 0000000..aa1785f --- /dev/null +++ b/static/css/colour/gruvbox-dark.css @@ -0,0 +1,29 @@ +/* gruvbox dark mode + * https://github.com/morhetz/gruvbox + */ +:root { + --dark-black: #1d2021; + --black: #282828; + --bright-black: #928374; + + --white: #ebdbb2; + --bright-white: #fbf1c7; + + --red: #cc241d; + --green: #98971a; + --yellow: #d3869b; + --blue: #458588; + --magenta: #b16286; + --cyan: #689d6a; + --orange: #d65d0e; + --gray: #928374; + + --bright-red: #fb4934; + --bright-green: #b8bb26; + --bright-yellow: #fabd2f; + --bright-blue: #83a598; + --bright-magenta: #d3869b; + --bright-cyan: #8ec07c; + --bright-orange: #fe8019; + --bright-gray: #a89984; +} diff --git a/static/css/colour/gruvbox-light.css b/static/css/colour/gruvbox-light.css new file mode 100644 index 0000000..cff8fa3 --- /dev/null +++ b/static/css/colour/gruvbox-light.css @@ -0,0 +1,30 @@ +/* gruvbox light mode + * https://github.com/morhetz/gruvbox + */ +:root { + --dark-black: #282828; + --black: #3c3836; + --bright-black: #928374; + + --white: #fbf1c7; + --bright-white: #f9f5d7; + + --red: #9d0006; + --green: #79740e; + --yellow: #b57614; + --blue: #076678; + --magenta: #8f3f71; + --cyan: #427b58; + --orange: #af3a03; + --gray: #7c6f64; + + --dark-white: #f2e5bc; + --bright-red: #cc241d; + --bright-green: #98971a; + --bright-yellow: #d79921; + --bright-blue: #458588; + --bright-magenta: #b16286; + --bright-cyan: #689d6a; + --bright-orange: #d65d0e; + --bright-gray: #928374; +} diff --git a/static/css/colour/light-mode.css b/static/css/colour/light-mode.css new file mode 100644 index 0000000..3ac2827 --- /dev/null +++ b/static/css/colour/light-mode.css @@ -0,0 +1,7 @@ +:root { + --bg: var(--white); + --dark-bg: var(--dark-white); + --bright-bg: var(--bright-black); + --fg: var(--black); + --bright-fg: var(--bright-black); +} diff --git a/static/css/custom.css b/static/css/custom.css new file mode 100644 index 0000000..71949ed --- /dev/null +++ b/static/css/custom.css @@ -0,0 +1 @@ +/* Override this file to customise the theme's CSS for your site */ diff --git a/static/css/footer.css b/static/css/footer.css new file mode 100644 index 0000000..3c5d6e9 --- /dev/null +++ b/static/css/footer.css @@ -0,0 +1,7 @@ +.page__footer { + color: var(--bright-bg); +} + +.page__footer p { + margin: 0; +} diff --git a/static/css/header.css b/static/css/header.css new file mode 100644 index 0000000..875201b --- /dev/null +++ b/static/css/header.css @@ -0,0 +1,18 @@ +/* Main menu */ +.main-nav ul { + display: flex; + flex-flow: row wrap; + justify-content: flex-start; + margin: 0; + padding: 0.25rem 0; +} + +.main-nav li { + margin-left: 2.5rem; + text-transform: lowercase; +} + +.main-nav li::marker { + content: "./"; +} + diff --git a/static/css/layout.css b/static/css/layout.css new file mode 100644 index 0000000..c078893 --- /dev/null +++ b/static/css/layout.css @@ -0,0 +1,64 @@ +/* 1rem = 16px by default */ + +.page { + max-width: 64rem; + margin: 1rem auto; + display: grid; + grid-template-areas: + "header" + "body" + "aside" + "footer"; + grid-template-columns: minmax(0, 1fr); /* https://css-tricks.com/preventing-a-grid-blowout/ */ + grid-row-gap: 2rem; +} + +@media (min-width: 45rem) { + .page { + grid-template-areas: + "header header" + "body aside" + "footer footer"; + grid-template-columns: minmax(0, 1fr) 15rem; + grid-column-gap: 2rem; + } +} + +/* Header */ +.page__header { + grid-area: header; + display: flex; +} + +.page__logo { + flex-shrink: 0; +} + +.page__nav { + flex-grow: 1; +} + +/* Body + aside */ +.page__body { + grid-area: body; + background-color: var(--bg); + box-shadow: 0 0 0 1rem var(--bg); + overflow-wrap: break-word; +} + +.page__aside { + grid-area: aside; + color: var(--bright-bg); +} + +/* Footer */ +.page__footer { + grid-area: footer; + max-width: 64rem; + margin: 1rem auto; + display: grid; + grid-template-areas: + "footer"; + grid-template-columns: minmax(0, 1fr); /* https://css-tricks.com/preventing-a-grid-blowout/ */ + grid-row-gap: 2rem; +} diff --git a/static/css/logo.css b/static/css/logo.css new file mode 100644 index 0000000..be24b86 --- /dev/null +++ b/static/css/logo.css @@ -0,0 +1,36 @@ +.page__logo { + padding: 0; + margin: 0; + font-weight: inherit; + color: var(--bg); +} + +.page__logo:before { + content: none; +} + +.page__logo-inner { + display: block; + background: var(--green); + padding: 0.25rem; +} + +a.page__logo-inner:link, a.page__logo-inner:visited { + color: inherit; + text-decoration: inherit; +} + +a.page__logo-inner:hover, +a.page__logo-inner:active { + background: var(--bright-green); +} + +.page__logo-inner:before { + content: "["; + color: var(--bg); +} + +.page__logo-inner:after { + content: "] $"; + color: var(--bg); +} diff --git a/static/css/risotto.css b/static/css/risotto.css new file mode 100644 index 0000000..3c2969d --- /dev/null +++ b/static/css/risotto.css @@ -0,0 +1,11 @@ +@import 'typography.css'; +@import 'layout.css'; +@import 'header.css'; +@import 'logo.css'; +@import 'about.css'; +@import 'footer.css'; + +body { + background-color: var(--dark-bg); + color: var(--fg); +} diff --git a/static/css/typography.css b/static/css/typography.css new file mode 100644 index 0000000..5a2c044 --- /dev/null +++ b/static/css/typography.css @@ -0,0 +1,214 @@ +/* Fonts */ +:root { + --font-monospace: "Fira Mono", monospace; +} + +body { + font-family: var(--font-monospace); + font-size: 16px; + line-height: 1.5rem; +} + +/* Headings */ +h1, +h2, +h3, +h4, +h5, +h6 { + font-size: 1rem; + margin: 1.5rem 0 0 0; + font-weight: 600; +} + +h1+h2, +h1+h3, +h1+h4, +h1+h5, +h1+h6, +h2+h3, +h2+h4, +h2+h5, +h2+h6, +h3+h4, +h3+h5, +h3+h6, +h4+h5, +h4+h6, +h5+h6 { + margin: 0; +} + +h1:before { content: "# "; } +h2:before { content: "## "; } +h3:before { content: "### "; } +h4:before { content: "#### "; } +h5:before { content: "##### "; } +h6:before { content: "###### "; } + +h1:before, +h2:before, +h3:before, +h4:before, +h5:before, +h6:before { + color: var(--bright-bg); +} + +h1:first-child { + margin-top: 0; +} + +/* Paragraphs */ +p { + margin: 0 0 1.5rem 0; +} + +/* Links */ + +a:link, a:visited { + color: var(--fg); +} + +a:hover, a:active { + color: var(--bright-fg); +} + +/* Lists */ +ul { + margin: 0 0 1.5rem 0; + padding-left: 1.25rem; +} + +ol { + margin: 0 0 1.5rem 0; + padding-left: 1.75rem; +} + +ul ul, +ul ol, +ol ul, +ol ol { + margin: 0; +} + +ul li::marker { + content: '∗\00A0'; + color: var(--bright-bg); +} + +ol li::marker { + color: var(--bright-bg); +} + +dt { + margin: 0; + font-weight: bold; +} + +dd { + margin: 0 0 0 1.5rem; + font-style: italic; +} + +dd + dt { + margin-top: 1.5rem; +} + +dl { + margin: 0 0 1.5rem 0; +} + +/* Blockquotes */ +blockquote { + position: relative; + margin: 0 0 1.5rem 1.5rem; +} + +blockquote::before { + position: absolute; + left: -1.5rem; + content: ">"; + color: var(--bright-bg); +} + +.twitter-tweet::before { + content: "\f099"; + font-family: "Font Awesome 5 Brands"; + font-weight: 400; +} + +/* Code */ +pre, +code, +kbd, +samp { + background: var(--dark-bg) !important; + font-family: var(--font-monospace); + color: var(--bright-bg); +} + +pre { + overflow-x: auto; + padding: 1.5rem; + margin: 0 0 1.5rem 0; +} + +/* Emphasis */ +b, +strong { + font-weight: 600; +} + +/* Highlighting */ +::selection, +mark { + background-color: var(--yellow); + color: var(--bg); +} + +/* Other typographic elements */ +hr { + border: 0; + margin-bottom: 1.5rem; +} + +hr:after { + content: '---'; + color: var(--bright-bg); +} + + +/* Prevent super/sub from affecting line height */ +sup, sub { + vertical-align: baseline; + position: relative; + top: -0.25rem; + font-size: unset; +} +sub { + top: 0.25rem; +} + +/* Tables */ +table { + border-spacing: 0; + margin: 0 0 1.5rem 0; + overflow-wrap: anywhere; +} +th, td { + padding: 0 .75rem; + vertical-align: top; +} +th:first-child, td:first-child { + padding-left: 0; +} +th { + text-align: inherit; +} + +/* Figures */ +img { + max-width: 100%; + height: auto; +} diff --git a/static/images/rice.svg b/static/images/rice.svg new file mode 100644 index 0000000..53e480c --- /dev/null +++ b/static/images/rice.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/theme.toml b/theme.toml new file mode 100644 index 0000000..265e16e --- /dev/null +++ b/theme.toml @@ -0,0 +1,16 @@ +name = "risotto" +license = "MIT" +licenselink = "https://github.com/joeroe/risotto/blob/master/LICENSE" +description = "A minimalist, responsive theme inspired by terminal ricing aesthetics." + +homepage = "https://github.com/joeroe/risotto" +demosite = "https://risotto.joeroe.io" + +tags = ["responsive", "minimal", "dark mode"] +features = [] +min_version = "0.41.0" + +[author] + name = "Joe Roe" + homepage = "https://joeroe.io" +