diff --git a/content/meta.json b/content/meta.json index f934e5eae2f..71a9b65dd75 100644 --- a/content/meta.json +++ b/content/meta.json @@ -14,6 +14,8 @@ "youtubeUrl": "https://www.youtube.com/c/EinundzwanzigPodcast", "spotifyUrl": "https://open.spotify.com/show/10408JFbE1n8MexfrBv33r", "appleUrl": "https://podcasts.apple.com/de/podcast/einundzwanzig-der-bitcoin-podcast/id1488229907", + "googleUrl": "https://podcasts.google.com/feed/aHR0cHM6Ly9hbmNob3IuZm0vcy9kOGQzYzM4L3BvZGNhc3QvcnNz", + "podcastIndexUrl": "https://podcastindex.org/podcast/185230", "overcastUrl": "https://overcast.fm/itunes1488229907/einundzwanzig-der-bitcoin-podcast", "anchorUrl": "https://anchor.fm/einundzwanzig", "masterFeedUrl": "https://anchor.fm/s/d8d3c38/podcast/rss", diff --git a/package-lock.json b/package-lock.json index 12023c435ee..2d85cc222b1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -27,8 +27,9 @@ "onchange": "7.1.0", "postcss": "8.3.8", "postcss-calc": "8.0.0", - "postcss-cli": "9.0.0", + "postcss-cli": "9.0.1", "postcss-custom-media": "8.0.0", + "postcss-extend": "1.0.5", "postcss-import": "14.0.2", "postcss-media-variables": "2.0.1", "postcss-nesting": "8.0.1", @@ -2130,6 +2131,12 @@ "integrity": "sha512-4dG1D1x/7g8PwHS9aK6QV5V94+ZvyP4+d19qDv43EzImmrndysIl4prmJ1hWWIGCqrZHyaHBm6BSEWHOLnpoNw==", "dev": true }, + "node_modules/js-base64": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", + "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==", + "dev": true + }, "node_modules/js-stringify": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", @@ -3247,17 +3254,17 @@ } }, "node_modules/postcss-cli": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-9.0.0.tgz", - "integrity": "sha512-tg6MK/jYyO7Ye9PObPYkjCQa7Bh2K6dA3a3I0muczRuw4T4HAtOTpPR+nOCw+On+WDB2sdsbGOsjlwO8BNRbUw==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-9.0.1.tgz", + "integrity": "sha512-zO160OBaAZBFUWO+QZIzEKMjnPIc5c61dMg1d7xafblh9cxbNb6s16ahJuP91PcVsu//gqr7BKllJxRiRDsSYw==", "dev": true, "dependencies": { "chokidar": "^3.3.0", - "colorette": "^2.0.0", "dependency-graph": "^0.11.0", "fs-extra": "^10.0.0", "get-stdin": "^9.0.0", "globby": "^12.0.0", + "nanocolors": "^0.2.11", "postcss-load-config": "^3.0.0", "postcss-reporter": "^7.0.0", "pretty-hrtime": "^1.0.3", @@ -3328,12 +3335,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/postcss-cli/node_modules/colorette": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.12.tgz", - "integrity": "sha512-lHID0PU+NtFzeNCwTL6JzUKdb6kDpyEjrwTD1H0cDZswTbsjLh2wTV2Eo2sNZLc0oSg0a5W1AI4Nj7bX4iIdjA==", - "dev": true - }, "node_modules/postcss-cli/node_modules/fs-extra": { "version": "10.0.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", @@ -3360,6 +3361,12 @@ "graceful-fs": "^4.1.6" } }, + "node_modules/postcss-cli/node_modules/nanocolors": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.2.12.tgz", + "integrity": "sha512-SFNdALvzW+rVlzqexid6epYdt8H9Zol7xDoQarioEFcFN0JHo4CYNztAxmtfgGTVRCmFlEOqqhBpoFGKqSAMug==", + "dev": true + }, "node_modules/postcss-cli/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -3443,6 +3450,60 @@ "node": ">=10.0.0" } }, + "node_modules/postcss-extend": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/postcss-extend/-/postcss-extend-1.0.5.tgz", + "integrity": "sha1-XqmL94e6PKz030YJdD+AqDOx0Oc=", + "dev": true, + "dependencies": { + "postcss": "^5.0.4" + } + }, + "node_modules/postcss-extend/node_modules/has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-extend/node_modules/postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "dependencies": { + "chalk": "^1.1.3", + "js-base64": "^2.1.9", + "source-map": "^0.5.6", + "supports-color": "^3.2.3" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/postcss-extend/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-extend/node_modules/supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "dependencies": { + "has-flag": "^1.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/postcss-import": { "version": "14.0.2", "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.0.2.tgz", @@ -6754,6 +6815,12 @@ "integrity": "sha512-4dG1D1x/7g8PwHS9aK6QV5V94+ZvyP4+d19qDv43EzImmrndysIl4prmJ1hWWIGCqrZHyaHBm6BSEWHOLnpoNw==", "dev": true }, + "js-base64": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", + "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==", + "dev": true + }, "js-stringify": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", @@ -7658,17 +7725,17 @@ } }, "postcss-cli": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-9.0.0.tgz", - "integrity": "sha512-tg6MK/jYyO7Ye9PObPYkjCQa7Bh2K6dA3a3I0muczRuw4T4HAtOTpPR+nOCw+On+WDB2sdsbGOsjlwO8BNRbUw==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-9.0.1.tgz", + "integrity": "sha512-zO160OBaAZBFUWO+QZIzEKMjnPIc5c61dMg1d7xafblh9cxbNb6s16ahJuP91PcVsu//gqr7BKllJxRiRDsSYw==", "dev": true, "requires": { "chokidar": "^3.3.0", - "colorette": "^2.0.0", "dependency-graph": "^0.11.0", "fs-extra": "^10.0.0", "get-stdin": "^9.0.0", "globby": "^12.0.0", + "nanocolors": "^0.2.11", "postcss-load-config": "^3.0.0", "postcss-reporter": "^7.0.0", "pretty-hrtime": "^1.0.3", @@ -7718,12 +7785,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "colorette": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.12.tgz", - "integrity": "sha512-lHID0PU+NtFzeNCwTL6JzUKdb6kDpyEjrwTD1H0cDZswTbsjLh2wTV2Eo2sNZLc0oSg0a5W1AI4Nj7bX4iIdjA==", - "dev": true - }, "fs-extra": { "version": "10.0.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", @@ -7745,6 +7806,12 @@ "universalify": "^2.0.0" } }, + "nanocolors": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.2.12.tgz", + "integrity": "sha512-SFNdALvzW+rVlzqexid6epYdt8H9Zol7xDoQarioEFcFN0JHo4CYNztAxmtfgGTVRCmFlEOqqhBpoFGKqSAMug==", + "dev": true + }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -7806,6 +7873,50 @@ "integrity": "sha512-FvO2GzMUaTN0t1fBULDeIvxr5IvbDXcIatt6pnJghc736nqNgsGao5NT+5+WVLAQiTt6Cb3YUms0jiPaXhL//g==", "dev": true }, + "postcss-extend": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/postcss-extend/-/postcss-extend-1.0.5.tgz", + "integrity": "sha1-XqmL94e6PKz030YJdD+AqDOx0Oc=", + "dev": true, + "requires": { + "postcss": "^5.0.4" + }, + "dependencies": { + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "js-base64": "^2.1.9", + "source-map": "^0.5.6", + "supports-color": "^3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + } + } + }, "postcss-import": { "version": "14.0.2", "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.0.2.tgz", diff --git a/package.json b/package.json index 4f2bfdf15c2..0598b377762 100644 --- a/package.json +++ b/package.json @@ -47,8 +47,9 @@ "onchange": "7.1.0", "postcss": "8.3.8", "postcss-calc": "8.0.0", - "postcss-cli": "9.0.0", + "postcss-cli": "9.0.1", "postcss-custom-media": "8.0.0", + "postcss-extend": "1.0.5", "postcss-import": "14.0.2", "postcss-media-variables": "2.0.1", "postcss-nesting": "8.0.1", diff --git a/postcss.config.js b/postcss.config.js index 5912b59b84c..2479b26ff57 100644 --- a/postcss.config.js +++ b/postcss.config.js @@ -4,6 +4,7 @@ module.exports = { plugins: [ require('autoprefixer'), require('postcss-import'), + require('postcss-extend'), require('postcss-nesting'), mediaVariables, require('postcss-custom-media'), diff --git a/src/category.pug b/src/category.pug index 4d79f6b8a1e..562efeaa05e 100644 --- a/src/category.pug +++ b/src/category.pug @@ -7,11 +7,14 @@ block vars - const cardImage = `/img/cover/${category}.png` block main - #podcast.wrap + #podcast.podcast-category.wrap section + p= description + +categories(categoryName) + h1= categoryName h2 Aktuelle Episode - .current + .latest +episodePlayer(current) if episodes.length diff --git a/src/css/base/elements.css b/src/css/base/elements.css index 9043fd664f2..265452ea60c 100644 --- a/src/css/base/elements.css +++ b/src/css/base/elements.css @@ -48,13 +48,15 @@ h6 { } h1 { - font-size: var(--font-size-xxxl); - font-weight: var(--font-weight-regular); + font-size: var(--font-size-xxl); + color: var(--color-secondary); + margin-bottom: var(--space-l); } h2 { font-size: var(--font-size-xl); color: var(--color-secondary); + margin-bottom: var(--space-l); } h3 { @@ -66,6 +68,10 @@ h4, h5, h6 { font-size: var(--font-size-m); } +section { + margin-bottom: var(--space-xxl); +} + a { outline: 0; color: var(--color-accent); @@ -107,8 +113,24 @@ ul ul { margin-bottom: 0; } +table { + border-collapse: collapse; + + & th, + & td { + border-bottom: 1px solid var(--color-border-medium); + padding: var(--space-s) var(--space-m); + text-align: left; + } + + & td { + border-bottom-color:var(--color-border-light); + } +} + p, -ul { +ul, +table { & + h2 { margin-top: var(--space-xl); } diff --git a/src/css/base/header.css b/src/css/base/header.css index 83ec985446d..a3346f29a5a 100644 --- a/src/css/base/header.css +++ b/src/css/base/header.css @@ -31,7 +31,11 @@ & a { color: var(--color-body-text); - &:hover { + &[href="#"] { + cursor: context-menu; + } + + &:not([href="#"]):hover { @media not all and (hover: none) { color: var(--color-accent); text-decoration: none; @@ -67,13 +71,10 @@ @media (--up_to_M) { margin-bottom: var(--space-s); - font-size: 3.85vw; + margin-top: var(--space-l); + font-size: var(--font-size-l); } - @media (--M_to_L) { - margin-top: var(--space-m); - font-size: 3.5vw; - } - @media (--L_and_up) { + @media (--M_and_up) { margin-top: var(--space-l); font-size: var(--font-size-xl); } @@ -82,14 +83,50 @@ display: flex; align-items: center; - & a { - margin-right: 1em; + & .navItem { + position: relative; + margin-right: var(--space-xl); + overflow: hidden; text-transform: uppercase; - font-weight: var(--font-weight-bold); - cursor: pointer; + min-width: 3em; + z-index: 1; - &.current { - color: var(--color-accent); + & a { + position: relative; + display: block; + font-weight: var(--font-weight-bold); + z-index: 1; + + &.current { + color: var(--color-accent); + } + } + + & .more { + position: absolute; + z-index: 0; + top: calc(var(--space-m) * -1); + left: calc(var(--space-l) * -1); + right: calc(var(--space-l) * -1); + opacity: 0; + padding: 1.5em var(--space-l) var(--space-m); + background: var(--color-flyout-bg); + transition-property: background, position, opacity; + transition-duration: var(--transition-duration-fast); + border-radius: var(--space-m); + + & a { + margin-top: var(--space-l); + } + } + + &:hover, + &:focus { + overflow: visible; + + & .more { + opacity: 1; + } } } } @@ -101,10 +138,6 @@ position: relative; top: 1px; - @media (--up_to_M) { - visibility: hidden; - } - & svg { height: 4.5vw; width: 4.5vw; @@ -128,6 +161,10 @@ border: 0; outline: 0; + @media screen and (max-width: 399px) { + visibility: hidden; + } + &:hover { @media not all and (hover: none) { color: var(--color-accent); diff --git a/src/css/base/layout.css b/src/css/base/layout.css index 02f1f9b9699..b6ce5441971 100644 --- a/src/css/base/layout.css +++ b/src/css/base/layout.css @@ -19,16 +19,4 @@ @media (--L_and_up) { padding-top: var(--space-l); } - - & h1 { - display: none; - } - - & h2 { - margin-bottom: var(--space-l); - } - - & section { - margin-bottom: var(--space-xxl); - } } diff --git a/src/css/base/variables.css b/src/css/base/variables.css index 9e3eeb192eb..4a195d4f55b 100644 --- a/src/css/base/variables.css +++ b/src/css/base/variables.css @@ -9,14 +9,21 @@ :root { --color-neutral-0: #fff; --color-neutral-10: #f2f2f2; + --color-neutral-25: #d2d2d2; --color-neutral-50: #888; + --color-neutral-75: #555; + --color-neutral-80: #333; --color-neutral-90: #222; --color-neutral-95: #1B1B1B; - --color-overlay-bg: rgba(200, 200, 200, .95); + --color-border-light: var(--color-neutral-10); + --color-border-medium: var(--color-neutral-25); + + --color-overlay-bg: rgba(230, 230, 230, .95); --color-body-text: var(--color-neutral-90); --color-body-bg: var(--color-neutral-0); --color-card-bg: var(--color-neutral-10); + --color-flyout-bg: var(--color-overlay-bg); --color-accent: #f7931a; --color-accent-highlight: #dd7901; --color-derweg: #00B4CF; @@ -46,7 +53,6 @@ --font-size-l: 1.25rem; --font-size-xl: 1.75rem; --font-size-xxl: 2.5rem; - --font-size-xxxl: 4rem; @media (--up_to_M) { --wrap-padding-horizontal: var(--space-l); @@ -61,18 +67,22 @@ --logo-height: calc((100vw - var(--wrap-padding-horizontal) * 2) / 134 * 12); } -:root[data-theme="dark"] { +%dark-theme { --color-body-text: var(--color-neutral-0); --color-body-bg: var(--color-neutral-90); --color-card-bg: var(--color-neutral-95); --color-overlay-bg: rgba(20, 20, 20, .95); + --color-flyout-bg: var(--color-overlay-bg); + --color-border-light: var(--color-neutral-80); + --color-border-medium: var(--color-neutral-75); +} + +:root[data-theme="dark"] { + @extend %dark-theme; } @media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { - --color-body-text: var(--color-neutral-0); - --color-body-bg: var(--color-neutral-90); - --color-card-bg: var(--color-neutral-95); - --color-overlay-bg: rgba(20, 20, 20, .95); + @extend %dark-theme; } } diff --git a/src/css/main.css b/src/css/main.css index 7fb48862f2c..f8cd82c0454 100644 --- a/src/css/main.css +++ b/src/css/main.css @@ -11,6 +11,7 @@ @import 'sections/podcast.css'; @import 'sections/team.css'; @import 'sections/meetups.css'; +@import 'sections/events.css'; @import 'sections/media.css'; @import 'sections/spenden.css'; @import 'sections/soundboard.css'; diff --git a/src/css/sections/events.css b/src/css/sections/events.css new file mode 100644 index 00000000000..32807f88244 --- /dev/null +++ b/src/css/sections/events.css @@ -0,0 +1,5 @@ +#events { + & img { + max-width: 100%; + } +} diff --git a/src/css/sections/podcast.css b/src/css/sections/podcast.css index 9288da01705..4903001cec2 100644 --- a/src/css/sections/podcast.css +++ b/src/css/sections/podcast.css @@ -1,4 +1,12 @@ #podcast { + &.podcast-home h1 { + display: none; + } + + &.podcast-category h1 { + margin-top: var(--space-l); + } + & .categories { display: inline-flex; flex-wrap: wrap; @@ -25,11 +33,17 @@ text-decoration: none; } } + + &.current { + color: var(--color-neutral-0); + background-color: var(--color-secondary); + text-decoration: none; + } } } - & .current { - margin-bottom: 4rem; + & .latest { + margin-bottom: var(--space-xxl); } } diff --git a/src/css/sections/spenden.css b/src/css/sections/spenden.css index 1039605244b..34d70535507 100644 --- a/src/css/sections/spenden.css +++ b/src/css/sections/spenden.css @@ -1,6 +1,6 @@ #spenden { - & h2 { - margin-bottom: var(--space-xl); + & .spenden { + margin-top: var(--space-xxl); } } diff --git a/src/events.pug b/src/events.pug new file mode 100644 index 00000000000..0924841da88 --- /dev/null +++ b/src/events.pug @@ -0,0 +1,16 @@ +extends /template.pug + +block vars + - const title = 'Bitcoin-Events' + - const description = 'Eine Liste von Bitcoin-Events und Einundzwanzig-Konferenzen im D/A/CH-Raum.' + - const cardImage = '/img/card/meetups.png' + +block main + #events.wrap + section + h1= title + p= description + + :markdown-it(html linkify typographer) + - 18.-20. Februar 2022: [Satoshis Bleibe](/events/satoshis-bleibe-2022) + - 06.-08. August 2021: [Bitcoin Zitadelle](https://bitcoin-zitadelle.de/) diff --git a/src/events/satoshis-bleibe-2022.pug b/src/events/satoshis-bleibe-2022.pug new file mode 100644 index 00000000000..e1e00f5b442 --- /dev/null +++ b/src/events/satoshis-bleibe-2022.pug @@ -0,0 +1,94 @@ +extends /template.pug + +block vars + - const title = 'Satoshis Bleibe 2022' + - const description = 'Freitag, 18.02.2022 bis Sonntag, 20.02.2022 — Alte Kirche Bernkastel-Wehlen' + - const cardImage = '/img/events/satoshis-bleibe-2022.png' + +block main + #events.wrap + section + h1= title + + :markdown-it(html linkify typographer) + ## Datum und Location + + **Freitag, 18.02.2022 bis Sonntag, 20.02.2022** + + Alte Kirche Bernkastel-Wehlen + Brückenstraße 15 + 54470 Bernkastel-Wehlen + + [https://www.bleibe.de/kirche.html](https://www.bleibe.de/kirche.html) + + ## Philosophie + + Bitcoin verbindet. Aus diesem Grund haben wir uns entschlossen, dieses besondere Meetup zu veranstalten und diesen Namen gewählt. In Satoshis Bleibe ist jeder willkommen, sei es kompletter Bitcoin-Neuling oder jahrzehntelanger Bitcoin-Bulle. Satoshis Bleibe ist das, was wir draus machen. + + Bitcoin ist für jeden und grenzt niemanden aus. Genauso ist Bitcoin für jeden etwas anderes. Deshalb kommen wir als offene Gemeinschaft zusammen, um unsere Ideen und Ansichten miteinander zu teilen. + + Satoshi Nakamoto legte mit dem Bitcoin-Protokoll den Grundstein für eine Bewegung, welche uns über jeglichen Grenzen und Unterschiede vereint. Gemeinsam können wir etwas verändern, gemeinsam sind wir stark. + + ![Logo von Satoshis Bleibe 2022](/img/events/satoshis-bleibe-2022.png) + + Das Wochenende in Bernkastel-Wehlen soll ein familiärer Ort des Austausches, des Lernens und des Knüpfens von neuen Bekanntschaften sein. Ein lockeres Programm über das Wochenende sorgt für die nötige Unterhaltung und beinhaltet einige spannende Tagespunkte, die die Veranstaltung in der Form einzigartig machen. + + ## Teilnahme + + Da die Kapazitäten in der Kirche und im anliegenden Feuerwehrhaus auf maximal **32** Personen begrenzt sind, können wir nur sehr wenige Tickets anbieten. + + Folgende Leistungen sind in der Teilnahmegebühr enthalten: + + | Standardticket | Kinderticket | + |--------------------|------------------| + | Zugang zur Bleibe am kompletten Wochenende | Nur in Kombination mit einem Standardticket / Tagesticket buchbar | + | Unterkunft in der Bleibe (Kirche / Feuerwehrhaus) - Achtung: keine Einzelzimmer, sondern mit anderen Bitcoinern geteilte Zimmer | Unterkunft in der Bleibe (Kirche / Feuerwehrhaus) | + | T-Shirt / Hoodie passend zum Event - Farbe wählbar | T-Shirt / Hoodie passend zum Event - Farbe wählbar | + | Essen und Trinken alles inklusive | Essen und Trinken alles inklusive || **Preis inkl. Shirt: 275 €** + | **Preis inkl. Hoodie: 290 €** | **Preis inkl. Shirt: 150 €** + | **Preis inkl. Hoodie: 165 €** | + + ## Zahlung + + Die Veranstaltung und die Teilnahmegebühr sind so ausgelegt, dass die entstehenden Kosten abgedeckt werden und jeglicher Überschuss wird anschließend im Namen aller Teilnehmer an den Verein von **Einundzwanzig** gespendet. Alternativ kann auf der Bleibe 2022 auch darüber gestimmt werden, ob eine andere Organisation / Projekt unterstützt werden soll. + + Die Zahlung des Teilnahmebeitrags erfolgt wahlweise per **Bitcoin** / **Lightning**. + + ## Programm + + Das untenstehende Programm ist bewusst sehr **offen** und **locker** geplant, sodass die Teilnehmer gerne selber weitere Aktivitäten, Vorträge oder Diskussionen vorschlagen können. In dem Hauptraum der Kirche haben wir die Möglichkeit über einen großen Fernseher ggf. Präsentationen, live Video-Talks oder ähnliches zu zeigen. Wenn ihr eigene Programmpunkte einbringen wollt, sprecht uns gerne an. + + ### Freitag + + | Zeit | Thema | + |------|-------| + | ab 15 Uhr | Anreise und Check-In | + | ca. 18:00 | Kick-off | + | ca. 19:00 | Gemeinsames Abendessen | + | ca. 20:30 | Abendprogramm | + + ### Samstag + + | Zeit | Thema | + |------|-------| + | ca. 8:30 | Frühstück | + | ca. 10:00 | Workshops I | + | ca. 12:30 | Mittagessen | + | ca. 14:00 | kleiner Spaziergang an der Mosel | + | ca. 15:30 | Workshops II | + | ca. 18:30 | Gemeinsames Abendessen | + | ca. 20:30 | Abendprogramm | + + ### Sonntag + + | Zeit | Thema | + |------|-------| + | ca. 8:30 | Frühstück | + | ca. 11:00 | gemeinsame kleine Wanderung - Kräutertour mit und von Nick! | + | | Abreise nach Belieben, Kirche ist bis 22 Uhr für uns verfügbar | + + ## Kontakt + + Solltet ihr Interesse an der Teilnahme zur Satoshis Bleibe 2022 in Bernkastel-Wehlen haben, dann folgt gerne dem Twitteraccount der Bleibe und wir werden dort alle Informationen und das weitere Vorgehen veröffentlichen. Der Ticketverkauf an sich wird erst später starten und auch dies werden wir auf dem Kanal veröffentlichen. + + [Twitteraccount Satoshis Bleibe](https://twitter.com/satoshisbleibe) diff --git a/src/includes/mixins.pug b/src/includes/mixins.pug index db44ccb08b7..770eb0b1203 100644 --- a/src/includes/mixins.pug +++ b/src/includes/mixins.pug @@ -2,6 +2,15 @@ mixin sprite(id) svg(role="img" title=id)&attributes(attributes) use(xlink:href=`${assetPath("/img/sprite.svg")}#${id}`) +mixin categories(current) + ul.categories + li: a(href="/podcast/" class=(!current && 'current')) Alles + li: a(href="/podcast/news/" class=(current === 'News' && 'current')) News + li: a(href="/podcast/interviews/" class=(current === 'Interviews' && 'current')) Interviews + li: a(href="/podcast/lesestunde/" class=(current === 'Lesestunde' && 'current')) Lesestunde + li: a(href="/podcast/der-weg/" class=(current === 'Der Weg' && 'current')) Der Weg + li: a(href="/podcast/verschiedenes/" class=(current === 'Verschiedenes' && 'current')) Verschiedenes + mixin member(m) li.member(id=m.name) img(src=assetPath(m.image) alt=m.name loading="lazy") diff --git a/src/includes/template.pug b/src/includes/template.pug index 2ddf109ef00..7a8565f9daf 100644 --- a/src/includes/template.pug +++ b/src/includes/template.pug @@ -54,13 +54,22 @@ html(lang="en") +sprite("logo-horizontal").logo .nav nav - a.navItem(href="/podcast/" class=(navCurrent === 'podcast' && 'current')) Podcast - a.navItem#navItemMeetups(href="/meetups/" class=(navCurrent === 'meetups' && 'current')) Meetups - a.navItem#navItemMeetups(href="/spenden/" class=(navCurrent === 'spenden' && 'current')) Spenden - a.navItem#navItemMedia(href="/media/" class=(navCurrent === 'media' && 'current')) Media - a.navItem(href="/soundboard/" class=(navCurrent === 'soundboard' && 'current')) Sounds - a.navItem(href="/team/" class=(navCurrent === 'team' && 'current')) Team - //- a.navItem(href=site.meta.shopUrl target="_blank") Shop + .navItem + a(href="/podcast/" class=(navCurrent === 'podcast' && 'current')) Podcast + .navItem + a(href="#" onclick="return false;") Community + .more + a(href="/meetups/" class=(navCurrent === 'meetups' && 'current')) Meetups + a(href="/events/" class=(navCurrent === 'events' && 'current')) Events + a(href="/spenden/" class=(navCurrent === 'spenden' && 'current')) Spenden + .navItem + a(href="#" onclick="return false;") Mehr + .more + a(href="/media/" class=(navCurrent === 'media' && 'current')) Media + a(href="/soundboard/" class=(navCurrent === 'soundboard' && 'current')) Sounds + a(href="/team/" class=(navCurrent === 'team' && 'current')) Team + //- .navItem + //- a(href=site.meta.shopUrl target="_blank") Shop button(type="button").theme +sprite("theme") diff --git a/src/media.pug b/src/media.pug index 3d936276c1f..70e345fb146 100644 --- a/src/media.pug +++ b/src/media.pug @@ -1,7 +1,7 @@ extends /template.pug block vars - - const title = 'Media' + - const title = 'Unser Media Kit' - const description = 'Damit wir mal groß und berühmt werden, kannst du dieses Media Kit gerne nutzen, um allen von uns zu erzählen.' block main diff --git a/src/meetups.pug b/src/meetups.pug index 0405a793c02..f03d66424db 100644 --- a/src/meetups.pug +++ b/src/meetups.pug @@ -1,7 +1,7 @@ extends /template.pug block vars - - const title = 'Meetups' + - const title = 'Bitcoin-Meetups' - const description = 'Eine Liste von Bitcoin-Meetups und Einundzwanzig-Treffen im D/A/CH-Raum.' - const cardImage = '/img/card/meetups.png' - const filterOfficial = (list, official) => list.filter(meetup => meetup.name.startsWith('Einundzwanzig') === official) diff --git a/src/podcast.pug b/src/podcast.pug index c0af5665cca..c7ee9804606 100644 --- a/src/podcast.pug +++ b/src/podcast.pug @@ -6,27 +6,26 @@ block vars - const description = 'Wir bringen dir die Bitcoin-News der Woche, sowie zusätzlich Interviews und die besten Artikel als Lesestunde. Außerdem erfährst du in "Der Weg" wie andere Leute zu Bitcoin gekommen sind.' block main - #podcast.wrap + #podcast.podcast-home.wrap section h1= title p= description - ul.categories - li: a(href="/podcast/news/") News - li: a(href="/podcast/interviews/") Interviews - li: a(href="/podcast/lesestunde/") Lesestunde - li: a(href="/podcast/der-weg/") Der Weg - li: a(href="/podcast/verschiedenes/") Verschiedenes + +categories() p - | Du findest uns auf + | Du findest uns auf allen gängigen Podcast-Plattformen: = " " a(href=site.meta.spotifyUrl) Spotify = ", " - a(href=site.meta.appleUrl) Apple Podcasts + a(href=site.meta.appleUrl) Apple + = ", " + a(href=site.meta.googleUrl) Google = ", " a(href=site.meta.overcastUrl) Overcast - = " und " + = ", " a(href=site.meta.anchorUrl) Anchor + = " und " + a(href=site.meta.podcastIndexUrl) Podcast Index = "." +subscribe() diff --git a/src/spenden.pug b/src/spenden.pug index 4625d08d99e..c6b2a6843f2 100644 --- a/src/spenden.pug +++ b/src/spenden.pug @@ -11,10 +11,9 @@ block main p= description :markdown-it(html linkify typographer) - Neue Vorschläge können gerne [per Pull Request](https://github.com/Einundzwanzig-Podcast/einundzwanzig.space/edit/master/content/spenden/) hinzugefügt werden. + Neue Vorschläge können gerne [per Pull Request](https://github.com/Einundzwanzig-Podcast/einundzwanzig.space/edit/master/content/spenden/) hinzugefügt werden. Hier gibt es ein [Video-Tutorial](https://www.youtube.com/watch?v=BNJc9LExEzU), wie ein neuer Pull Request erstellt werden kann. - h2= title ul.spenden(data-shuffle) each s in shuffle(spenden) +spende(s) diff --git a/src/team.pug b/src/team.pug index 0c10584752a..ee7ef13765c 100644 --- a/src/team.pug +++ b/src/team.pug @@ -8,6 +8,14 @@ block main #team.wrap section h1= title + + :markdown-it(html linkify typographer) + Einmal die Woche sitzen die Jungs zusammen und besprechen die aktuellen Geschehnisse in Bitcoin und der Welt. + + [Wir](/team/) bringen dir die [News](/podcast/news/) der Woche, sowie zusätzlich [Interviews](/podcast/interviews/) und + die besten Artikel als [Lesestunde](/podcast/lesestunde/). + Außerdem erfährst du in [Der Weg](/podcast/der-weg/) wie andere Leute zu Bitcoin gekommen sind. + h2 Core ul.members(data-shuffle) each m in shuffle(team) diff --git a/static/img/events/satoshis-bleibe-2022.png b/static/img/events/satoshis-bleibe-2022.png new file mode 100644 index 00000000000..2d49a579ea7 Binary files /dev/null and b/static/img/events/satoshis-bleibe-2022.png differ diff --git a/tasks/generate_pages.js b/tasks/generate_pages.js index 5c6b786a74a..291c19e6f39 100644 --- a/tasks/generate_pages.js +++ b/tasks/generate_pages.js @@ -31,6 +31,8 @@ renderPage('meetups', 'meetups', { navCurrent: 'meetups', meetups }) renderPage('spenden', 'spenden', { navCurrent: 'spenden', spenden }) renderPage('media', 'media', { navCurrent: 'media' }) renderPage('soundboard', 'soundboard', { navCurrent: 'soundboard', soundboard }) +renderPage('events', 'events', { navCurrent: 'events' }) +renderPage('events/satoshis-bleibe-2022', 'events/satoshis-bleibe-2022', { navCurrent: 'events' }) renderPage('category', 'podcast/news', { navCurrent: 'podcast', category: 'news', categoryName: 'News', episodes: episodes.filter(e => e.category === 'news') }) renderPage('category', 'podcast/interviews', { navCurrent: 'podcast', category: 'interview', categoryName: 'Interviews', episodes: episodes.filter(e => e.category === 'interview') })