Update participants

This commit is contained in:
Dennis Reimann
2025-01-18 14:13:32 +01:00
parent 938a2ce9d6
commit f4bb3bd737
60 changed files with 116 additions and 68 deletions

View File

@@ -5,7 +5,7 @@
"nostr": "npub17fqtu2mgf7zueq2kdusgzwr2lqwhgfl2scjsez77ddag2qx8vxaq3vnr8y", "nostr": "npub17fqtu2mgf7zueq2kdusgzwr2lqwhgfl2scjsez77ddag2qx8vxaq3vnr8y",
"github": "MarkusTurm", "github": "MarkusTurm",
"text": "Bester Mann. Toxic ☣️ aber fair. Sorgt für die Bitcoin Mass-Adoption \"one [Currywurstbude](http://www.curry-alm.info/) at a time\" 🌭", "text": "Bester Mann. Toxic ☣️ aber fair. Sorgt für die Bitcoin Mass-Adoption \"one [Currywurstbude](http://www.curry-alm.info/) at a time\" 🌭",
"image": "/img/team/markus.jpg", "image": "/img/participants/markus.jpg",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
"customKey": "696969", "customKey": "696969",
@@ -22,7 +22,7 @@
"github": "dergigi", "github": "dergigi",
"url": "https://dergigi.com", "url": "https://dergigi.com",
"text": "Der Gigi leiht dir seine Taschenlampe 🔦 solltest du dich auf deinem Weg im [Kaninchenbau](https://21lessons.com/) mal verlaufen 🕳🐇", "text": "Der Gigi leiht dir seine Taschenlampe 🔦 solltest du dich auf deinem Weg im [Kaninchenbau](https://21lessons.com/) mal verlaufen 🕳🐇",
"image": "/img/team/gigi.jpg", "image": "/img/participants/gigi.jpg",
"v4v": { "v4v": {
"address": "02e12fea95f576a680ec1938b7ed98ef0855eadeced493566877d404e404bfbf52" "address": "02e12fea95f576a680ec1938b7ed98ef0855eadeced493566877d404e404bfbf52"
} }
@@ -33,7 +33,7 @@
"nostr": "npub1gxdaxg7prcvgcs4pvlr8vac9a93t6uhph0wfuvpjm28q087n5y9qzx69d4", "nostr": "npub1gxdaxg7prcvgcs4pvlr8vac9a93t6uhph0wfuvpjm28q087n5y9qzx69d4",
"url": "http://fabthefox.com", "url": "http://fabthefox.com",
"text": "The Fox 🦊 verbreitet mit seinem Verlag Aprycot das Bitcoin-Wissen und ist der Wirt an der [Media-Theke](https://aprycot.media/thek/) 📙", "text": "The Fox 🦊 verbreitet mit seinem Verlag Aprycot das Bitcoin-Wissen und ist der Wirt an der [Media-Theke](https://aprycot.media/thek/) 📙",
"image": "/img/team/fab.jpg", "image": "/img/participants/fab.jpg",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
"customKey": "696969", "customKey": "696969",
@@ -49,7 +49,7 @@
"github": "dennisreimann", "github": "dennisreimann",
"url": "https://d11n.net", "url": "https://d11n.net",
"text": "Mag Open Source und [BTCPay Server](https://btcpayserver.org/) 💚 und schreibt lieber Software als Texte über sich selbst 👨🏻‍💻", "text": "Mag Open Source und [BTCPay Server](https://btcpayserver.org/) 💚 und schreibt lieber Software als Texte über sich selbst 👨🏻‍💻",
"image": "/img/team/dennis.jpg", "image": "/img/participants/dennis.jpg",
"v4v": { "v4v": {
"address": "03b5ca2ceef3572eb4b8acfbc7755dab0dce24ed790e6945339cfcbe631e838600" "address": "03b5ca2ceef3572eb4b8acfbc7755dab0dce24ed790e6945339cfcbe631e838600"
} }
@@ -59,7 +59,7 @@
"twitter": "danielwingen", "twitter": "danielwingen",
"nostr": "npub1xv4z0eswam7k2zfytsm09mfaxv8a2dugtk566hvp45keysmeezgsqu47m5", "nostr": "npub1xv4z0eswam7k2zfytsm09mfaxv8a2dugtk566hvp45keysmeezgsqu47m5",
"text": "Kennt den [Value Of Bitcoin](https://valueofbitcoin.com/) 🧊 und ist daher nicht nur Sound Money Maximalist, sondern auch Fiat Minimalist 💸", "text": "Kennt den [Value Of Bitcoin](https://valueofbitcoin.com/) 🧊 und ist daher nicht nur Sound Money Maximalist, sondern auch Fiat Minimalist 💸",
"image": "/img/team/daniel.jpg", "image": "/img/participants/daniel.jpg",
"v4v": { "v4v": {
"address": "0201d14101401add234ebe3bc0e3020a39726daadf82bc3fa6b9871c4f5b17ab3f" "address": "0201d14101401add234ebe3bc0e3020a39726daadf82bc3fa6b9871c4f5b17ab3f"
} }
@@ -69,7 +69,7 @@
"twitter": "PatrickZGW", "twitter": "PatrickZGW",
"github": "PatrickZGW", "github": "PatrickZGW",
"text": "Gewinnt als Argumentations-Bazooka jedes Diskussionduell und ist Gastgeber des [Zeit, Geld & Wirtschaft](https://wavve.link/zgw-podcast) Podcasts ⌚₿\uD83D\uDCC8", "text": "Gewinnt als Argumentations-Bazooka jedes Diskussionduell und ist Gastgeber des [Zeit, Geld & Wirtschaft](https://wavve.link/zgw-podcast) Podcasts ⌚₿\uD83D\uDCC8",
"image": "/img/team/patrick.jpg" "image": "/img/participants/patrick.jpg"
}, },
"egge": { "egge": {
"name": "Egge", "name": "Egge",
@@ -77,7 +77,7 @@
"nostr": "npub1gvyhrc9pe745xnqyn9309jgg5yqeunfv2fyfhnjvzlj6dkzvqdcsj38j8a", "nostr": "npub1gvyhrc9pe745xnqyn9309jgg5yqeunfv2fyfhnjvzlj6dkzvqdcsj38j8a",
"github": "Egge7", "github": "Egge7",
"text": "Die [Mempool-Wetterfee](https://t.me/BlockReportDisc) der die Nodes vertrauen 🌈", "text": "Die [Mempool-Wetterfee](https://t.me/BlockReportDisc) der die Nodes vertrauen 🌈",
"image": "/img/team/egge.jpg", "image": "/img/participants/egge.jpg",
"v4v": { "v4v": {
"address": "02283e063b3121177fe8ed0c88806fe05b38cf5e192ff8c89e3bdc9b4df05dde21" "address": "02283e063b3121177fe8ed0c88806fe05b38cf5e192ff8c89e3bdc9b4df05dde21"
} }
@@ -88,7 +88,7 @@
"nostr": "npub1edej30zsgmmla78cmd8q7k4x8ff22ny8w8pvzqln6q0h2h9udneq32fwey", "nostr": "npub1edej30zsgmmla78cmd8q7k4x8ff22ny8w8pvzqln6q0h2h9udneq32fwey",
"url": "https://btc21.de", "url": "https://btc21.de",
"text": "Der Tulpenhändler deines Vertrauens 🌷 hat auch immer die neueste [BTC21](https://btc21.de) Ausgabe auf dem Tresen 📰", "text": "Der Tulpenhändler deines Vertrauens 🌷 hat auch immer die neueste [BTC21](https://btc21.de) Ausgabe auf dem Tresen 📰",
"image": "/img/team/joko.png", "image": "/img/participants/joko.png",
"v4v": { "v4v": {
"address": "03f51df0183b2083d678d867d7441ba7e8dbf1bfdd23729d702b81a8b128e3e876" "address": "03f51df0183b2083d678d867d7441ba7e8dbf1bfdd23729d702b81a8b128e3e876"
} }
@@ -100,7 +100,7 @@
"nostr": "npub1flac02t5hw6jljk8x7mec22uq37ert8d3y3mpwzcma726g5pz4lsmfzlk6", "nostr": "npub1flac02t5hw6jljk8x7mec22uq37ert8d3y3mpwzcma726g5pz4lsmfzlk6",
"url": "https://ideasarelikeflames.com/", "url": "https://ideasarelikeflames.com/",
"text": "Verbindet Bitcoin und [Bikini](https://bitcoin-turm.de/bturm26/) 👙 und berichtet als Türkei-Korrespondent über Geld in der ganzen Welt 🇹🇷", "text": "Verbindet Bitcoin und [Bikini](https://bitcoin-turm.de/bturm26/) 👙 und berichtet als Türkei-Korrespondent über Geld in der ganzen Welt 🇹🇷",
"image": "/img/team/kemal.jpg", "image": "/img/participants/kemal.jpg",
"v4v": { "v4v": {
"address": "02e01367e1d7818a7e9a0e8a52badd5c32615e07568dbe0497b6a47f9bef89d6af" "address": "02e01367e1d7818a7e9a0e8a52badd5c32615e07568dbe0497b6a47f9bef89d6af"
} }
@@ -109,7 +109,7 @@
"name": "Lassmiranda", "name": "Lassmiranda",
"nostr": "npub1pzptxv5nwqnr8mvz88ll6sq3hwq2c3yv439pr9puguzvwn5qz8jsj3ax2p", "nostr": "npub1pzptxv5nwqnr8mvz88ll6sq3hwq2c3yv439pr9puguzvwn5qz8jsj3ax2p",
"text": "Dennsiewillja! Rundum coole Socke 🧦 Wenn er nicht grade bei [Moe](https://www.youtube.com/watch?v=PGvwVo3rR8U) anruft, managed er unseren [YouTube-Kanal](https://www.youtube.com/c/EinundzwanzigPodcast) 📺", "text": "Dennsiewillja! Rundum coole Socke 🧦 Wenn er nicht grade bei [Moe](https://www.youtube.com/watch?v=PGvwVo3rR8U) anruft, managed er unseren [YouTube-Kanal](https://www.youtube.com/c/EinundzwanzigPodcast) 📺",
"image": "/img/team/lassmiranda.jpg", "image": "/img/participants/lassmiranda.jpg",
"v4v": { "v4v": {
"address": "02926b19109c70bc8dafa980fd65a1bff673d3a52603b816aa80d27f7961dfa945", "address": "02926b19109c70bc8dafa980fd65a1bff673d3a52603b816aa80d27f7961dfa945",
"customKey": "696969", "customKey": "696969",
@@ -121,7 +121,7 @@
"twitter": "fulmolightning", "twitter": "fulmolightning",
"url": "https://fulmo.org/", "url": "https://fulmo.org/",
"text": "[Potzblitz!](https://www.youtube.com/c/FulmoLightning/videos) ⚡️ Ein fulmonantes Organisationstalent und Lightning Network-Urgestein 🦸‍♂️", "text": "[Potzblitz!](https://www.youtube.com/c/FulmoLightning/videos) ⚡️ Ein fulmonantes Organisationstalent und Lightning Network-Urgestein 🦸‍♂️",
"image": "/img/team/jeff.jpg" "image": "/img/participants/jeff.jpg"
}, },
"moritz": { "moritz": {
"name": "Moritz", "name": "Moritz",
@@ -129,7 +129,7 @@
"github": "cryptoadvance", "github": "cryptoadvance",
"url": "https://specter.solutions", "url": "https://specter.solutions",
"text": "Ein Gespenst geht um die Welt 👻 und Moritz trägt es im [Specter-Koffer](https://specter.solutions/#enterprise) immer bei sich 🧳", "text": "Ein Gespenst geht um die Welt 👻 und Moritz trägt es im [Specter-Koffer](https://specter.solutions/#enterprise) immer bei sich 🧳",
"image": "/img/team/moritz.jpg" "image": "/img/participants/moritz.jpg"
}, },
"ole": { "ole": {
"name": "Ole", "name": "Ole",
@@ -137,7 +137,7 @@
"nostr": "npub17xc6v7ynma3cw0gq372q6y78zmekyvpkwqpuzuqm8zpydg5m4pkq8v2sts", "nostr": "npub17xc6v7ynma3cw0gq372q6y78zmekyvpkwqpuzuqm8zpydg5m4pkq8v2sts",
"url": "https://medium.com/@dercheapi", "url": "https://medium.com/@dercheapi",
"text": "Kinderzimmerökonom und Junior-Shitposter 💁‍♂️ Senkt unsere Boomer-Quote und findet die [Easter-Eggs](/podcast/der-weg-31-bitcoin-ist-ein-easter-egg/) 🥚", "text": "Kinderzimmerökonom und Junior-Shitposter 💁‍♂️ Senkt unsere Boomer-Quote und findet die [Easter-Eggs](/podcast/der-weg-31-bitcoin-ist-ein-easter-egg/) 🥚",
"image": "/img/team/ole.jpg", "image": "/img/participants/ole.jpg",
"v4v": { "v4v": {
"address": "03686128db3100e8a66caa3a50943aa72b80c00b3f8700ec01f3bf2e3657d69d54" "address": "03686128db3100e8a66caa3a50943aa72b80c00b3f8700ec01f3bf2e3657d69d54"
} }
@@ -149,7 +149,7 @@
"nostr": "npub1nxzp3zn90r44z07aeajc7wyah4fju49c9d3g45mxvmm64rmnrdusffch7m", "nostr": "npub1nxzp3zn90r44z07aeajc7wyah4fju49c9d3g45mxvmm64rmnrdusffch7m",
"url": "https://bitcoin-mentoring.me", "url": "https://bitcoin-mentoring.me",
"text": "Der Quoten-Schweizer! 🇨🇭🧀 Sagt jedem zentral gesteuerten Geldinstitut den Kampf an und hilft dir jeden Scammer zu scammen", "text": "Der Quoten-Schweizer! 🇨🇭🧀 Sagt jedem zentral gesteuerten Geldinstitut den Kampf an und hilft dir jeden Scammer zu scammen",
"image": "/img/team/cercatrova.jpg", "image": "/img/participants/cercatrova.jpg",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
"customKey": "696969", "customKey": "696969",
@@ -161,7 +161,7 @@
"twitter": "tanksen_f", "twitter": "tanksen_f",
"nostr": "npub1umpg95dp5x7uwf2trd5n9hejc5t29al3qdk3nxehh8snz2dr4unqcjw9r5", "nostr": "npub1umpg95dp5x7uwf2trd5n9hejc5t29al3qdk3nxehh8snz2dr4unqcjw9r5",
"text": "Unser Wegbegleiter, Tippspiel-Buchmacher, Afrika-Korrespondent und Fußball-Aficionado ⚽", "text": "Unser Wegbegleiter, Tippspiel-Buchmacher, Afrika-Korrespondent und Fußball-Aficionado ⚽",
"image": "/img/team/tanksen.jpg", "image": "/img/participants/tanksen.jpg",
"v4v": { "v4v": {
"address": "03d07c6075d640e680d54bd5201df087bc1fc56cbc084ab3aed54c3d96a486a919" "address": "03d07c6075d640e680d54bd5201df087bc1fc56cbc084ab3aed54c3d96a486a919"
} }
@@ -170,7 +170,7 @@
"name": "Gambler", "name": "Gambler",
"twitter": "gmblr247", "twitter": "gmblr247",
"nostr": "npub10t8npnmqhpwx9w8k232kess7gqtdlr6kqjemdzf8jnughwqd0gwsez0924", "nostr": "npub10t8npnmqhpwx9w8k232kess7gqtdlr6kqjemdzf8jnughwqd0gwsez0924",
"image": "/img/team/gmblr247.jpg", "image": "/img/participants/gmblr247.jpg",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
"customKey": "696969", "customKey": "696969",
@@ -184,7 +184,7 @@
"name": "Ben", "name": "Ben",
"twitter": "webdiverblue", "twitter": "webdiverblue",
"nostr": "npub1nkvn9xl8pzklk24777uvzlxvsuzn9hvhuuqjlmfce9h2xxkvutusxl5a52", "nostr": "npub1nkvn9xl8pzklk24777uvzlxvsuzn9hvhuuqjlmfce9h2xxkvutusxl5a52",
"image": "/img/team/ben.jpg", "image": "/img/participants/ben.jpg",
"v4v": { "v4v": {
"address": "02b1278809d2853516d30b9af8d7bb3b1845d1beeed18ee22a9ccaddfe7f30a794" "address": "02b1278809d2853516d30b9af8d7bb3b1845d1beeed18ee22a9ccaddfe7f30a794"
} }
@@ -201,7 +201,7 @@
"name": "zerofeerouting", "name": "zerofeerouting",
"twitter": "zerofeerouting", "twitter": "zerofeerouting",
"nostr": "npub1mc6arvz2ll8m26f75wj4d2w89ygq229t8h7m6cpfu0lqqa4l5hasp49pnw", "nostr": "npub1mc6arvz2ll8m26f75wj4d2w89ygq229t8h7m6cpfu0lqqa4l5hasp49pnw",
"image": "/img/team/zerofeerouting.jpg", "image": "/img/participants/zerofeerouting.jpg",
"v4v": { "v4v": {
"address": "038fe1bd966b5cb0545963490c631eaa1924e2c4c0ea4e7dcb5d4582a1e7f2f1a5" "address": "038fe1bd966b5cb0545963490c631eaa1924e2c4c0ea4e7dcb5d4582a1e7f2f1a5"
} }
@@ -210,7 +210,7 @@
"name": "Quillie", "name": "Quillie",
"twitter": "quilloughbee", "twitter": "quilloughbee",
"nostr": "npub1dskk3wspds53g9larr48cp4hxlkpg0ma2mtclh2y5key3pr9yhkqjvjuc2", "nostr": "npub1dskk3wspds53g9larr48cp4hxlkpg0ma2mtclh2y5key3pr9yhkqjvjuc2",
"image": "/img/team/quillie.jpg", "image": "/img/participants/quillie.jpg",
"v4v": { "v4v": {
"address": "02324936a19ff162f5a5809db9e4d26037f21ff5b076728b9ba483ea21f8ec5d15" "address": "02324936a19ff162f5a5809db9e4d26037f21ff5b076728b9ba483ea21f8ec5d15"
} }
@@ -218,6 +218,7 @@
"d0enakalle": { "d0enakalle": {
"name": "D0enakalle", "name": "D0enakalle",
"nostr": "npub1d0enakaludyvruzdndcgl4glkcqyfpvp9tdtf8cawzkskekhcu2sq9xlas", "nostr": "npub1d0enakaludyvruzdndcgl4glkcqyfpvp9tdtf8cawzkskekhcu2sq9xlas",
"image": "/img/participants/d0enakalle.png",
"v4v": { "v4v": {
"address": "0342643d329bea96befc58e65579c333a9f20eee48eaefa8c76d9bdf68a18d6220" "address": "0342643d329bea96befc58e65579c333a9f20eee48eaefa8c76d9bdf68a18d6220"
} }
@@ -225,6 +226,7 @@
"anti": { "anti": {
"name": "Anti", "name": "Anti",
"nostr": "npub1yu25lwrnht0knsl2swsd5mn966s4p54l3aejplpnzsjg6aryt3jq9t9xxs", "nostr": "npub1yu25lwrnht0knsl2swsd5mn966s4p54l3aejplpnzsjg6aryt3jq9t9xxs",
"image": "/img/participants/anti.jpg",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
"customKey": "696969", "customKey": "696969",
@@ -234,6 +236,7 @@
"stacksats": { "stacksats": {
"name": "StackSats", "name": "StackSats",
"nostr": "npub1hycynfhz23ardfmf9kgwfw4gpyqj2fsh24r2zuehg4x7lx4kn5cqsqv4y3", "nostr": "npub1hycynfhz23ardfmf9kgwfw4gpyqj2fsh24r2zuehg4x7lx4kn5cqsqv4y3",
"image": "/img/participants/stacksats.jpg",
"v4v": { "v4v": {
"address": "02bc3fae0be2045433dad90090aba2fb0083e92f33f67eb962b60cb82db5fedae1" "address": "02bc3fae0be2045433dad90090aba2fb0083e92f33f67eb962b60cb82db5fedae1"
} }
@@ -242,7 +245,7 @@
"name": "Paddepadde", "name": "Paddepadde",
"twitter": "paddepadde", "twitter": "paddepadde",
"nostr": "npub1gvqkjccl9urg93svaw60jqkk3ux8r3ycl5t3rlvc9uzjeu0agfuss8x8qy", "nostr": "npub1gvqkjccl9urg93svaw60jqkk3ux8r3ycl5t3rlvc9uzjeu0agfuss8x8qy",
"image": "/img/team/paddepadde.jpg", "image": "/img/participants/paddepadde.jpg",
"v4v": { "v4v": {
"address": "0384d37ce01a3950be609156dcbd3ebcad6a8107b11d796890521fde06508dfc4d" "address": "0384d37ce01a3950be609156dcbd3ebcad6a8107b11d796890521fde06508dfc4d"
} }
@@ -251,7 +254,7 @@
"name": "Chris", "name": "Chris",
"twitter": "coinjoined", "twitter": "coinjoined",
"nostr": "npub1r8343wqpra05l3jnc4jud4xz7vlnyeslf7gfsty7ahpf92rhfmpsmqwym8", "nostr": "npub1r8343wqpra05l3jnc4jud4xz7vlnyeslf7gfsty7ahpf92rhfmpsmqwym8",
"image": "/img/team/chris.jpg", "image": "/img/participants/chris.jpg",
"v4v": { "v4v": {
"address": "03aa66e2a8ff6da4e9f431bbd89585ef564835a0d977b40955a92a68235e4f09e1" "address": "03aa66e2a8ff6da4e9f431bbd89585ef564835a0d977b40955a92a68235e4f09e1"
} }
@@ -260,7 +263,7 @@
"name": "Fichte", "name": "Fichte",
"twitter": "fichte42", "twitter": "fichte42",
"nostr": "npub1pzmcx6c5z77r6zf9rf7xlj3kp9mt8wk29snuphdzu7ezzl97kqrsacns7v", "nostr": "npub1pzmcx6c5z77r6zf9rf7xlj3kp9mt8wk29snuphdzu7ezzl97kqrsacns7v",
"image": "/img/team/fichte42.jpg", "image": "/img/participants/fichte42.jpg",
"v4v": { "v4v": {
"address": "022bd2b6d8798587b54b3a12a9051aed7ecd3caaa24cb8155b4d0e3ea4ab031c57" "address": "022bd2b6d8798587b54b3a12a9051aed7ecd3caaa24cb8155b4d0e3ea4ab031c57"
} }
@@ -269,7 +272,7 @@
"name": "El Bitcoin Ambassador", "name": "El Bitcoin Ambassador",
"twitter": "elbitcoinamb", "twitter": "elbitcoinamb",
"nostr": "npub184842f0yqe7ee9kra6ufsmddmxs6q2cl5jutp3qns2a62t99na6s4n7t00", "nostr": "npub184842f0yqe7ee9kra6ufsmddmxs6q2cl5jutp3qns2a62t99na6s4n7t00",
"image": "/img/team/elbitcoinamb.jpg", "image": "/img/participants/elbitcoinamb.jpg",
"v4v": { "v4v": {
"address": "02926b19109c70bc8dafa980fd65a1bff673d3a52603b816aa80d27f7961dfa945", "address": "02926b19109c70bc8dafa980fd65a1bff673d3a52603b816aa80d27f7961dfa945",
"customKey": "696969", "customKey": "696969",
@@ -279,7 +282,7 @@
"benmitfleck": { "benmitfleck": {
"name": "BenMitFleck", "name": "BenMitFleck",
"twitter": "BenMitFleck", "twitter": "BenMitFleck",
"image": "/img/team/benmitfleck.jpg", "image": "/img/participants/benmitfleck.jpg",
"v4v": { "v4v": {
"address": "02926b19109c70bc8dafa980fd65a1bff673d3a52603b816aa80d27f7961dfa945", "address": "02926b19109c70bc8dafa980fd65a1bff673d3a52603b816aa80d27f7961dfa945",
"customKey": "696969", "customKey": "696969",
@@ -289,17 +292,23 @@
"tobo": { "tobo": {
"name": "Tobo", "name": "Tobo",
"nostr": "npub1rnm4dq7s9d8vp2jdyynl73wnxhlzaadgsj6hj3m46cyt4nsqdgtqxsu0lw", "nostr": "npub1rnm4dq7s9d8vp2jdyynl73wnxhlzaadgsj6hj3m46cyt4nsqdgtqxsu0lw",
"image": "/img/participants/tobo.jpg",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
"customKey": "696969", "customKey": "696969",
"customValue": "QgZTULTtllSKL3W3E6mY" "customValue": "QgZTULTtllSKL3W3E6mY"
} }
}, },
"hausi": {
"name": "Hausi",
"twitter": "hightower391",
"image": "/img/participants/hausi.jpg"
},
"sirius": { "sirius": {
"name": "Sirius", "name": "Sirius",
"twitter": "SiriusLightning", "twitter": "SiriusLightning",
"nostr": "npub1v4lgwjv7qfn3t7qjscpsgz9vqvspf6hecdp2ckgp0dz89uqn5slsgrhw3p", "nostr": "npub1v4lgwjv7qfn3t7qjscpsgz9vqvspf6hecdp2ckgp0dz89uqn5slsgrhw3p",
"image": "/img/team/sirius.jpg", "image": "/img/participants/sirius.jpg",
"v4v": { "v4v": {
"address": "02926b19109c70bc8dafa980fd65a1bff673d3a52603b816aa80d27f7961dfa945", "address": "02926b19109c70bc8dafa980fd65a1bff673d3a52603b816aa80d27f7961dfa945",
"customKey": "696969", "customKey": "696969",
@@ -309,7 +318,7 @@
"flashman": { "flashman": {
"name": "Flashman", "name": "Flashman",
"twitter": "FlashmanBTC", "twitter": "FlashmanBTC",
"image": "/img/team/flashman.jpg", "image": "/img/participants/flashman.jpg",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
"customKey": "696969", "customKey": "696969",
@@ -320,7 +329,7 @@
"name": "Octopus Olaf", "name": "Octopus Olaf",
"twitter": "octopus_olaf", "twitter": "octopus_olaf",
"nostr": "npub1p758nncqsme5zskvpplddsvgq52mfgp8vsenp8zh24xc3ua42ajqa79qea", "nostr": "npub1p758nncqsme5zskvpplddsvgq52mfgp8vsenp8zh24xc3ua42ajqa79qea",
"image": "/img/team/octopusolaf.jpg", "image": "/img/participants/octopusolaf.jpg",
"v4v": { "v4v": {
"address": "02b36bd758105b7b7c87d5d4a7601f3bf5b5c7f6c0a0fc6d38a0eed1ad87be3136" "address": "02b36bd758105b7b7c87d5d4a7601f3bf5b5c7f6c0a0fc6d38a0eed1ad87be3136"
} }
@@ -328,7 +337,7 @@
"holgerhatgarkeinenode": { "holgerhatgarkeinenode": {
"name": "HolgerHatGarKeineNode", "name": "HolgerHatGarKeineNode",
"nostr": "npub1pt0kw36ue3w2g4haxq3wgm6a2fhtptmzsjlc2j2vphtcgle72qesgpjyc6", "nostr": "npub1pt0kw36ue3w2g4haxq3wgm6a2fhtptmzsjlc2j2vphtcgle72qesgpjyc6",
"image": "/img/team/holgerhatgarkeinenode.jpg", "image": "/img/participants/holgerhatgarkeinenode.jpg",
"url": "https://portal.einundzwanzig.space", "url": "https://portal.einundzwanzig.space",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
@@ -339,7 +348,7 @@
"loddi": { "loddi": {
"name": "Loddi", "name": "Loddi",
"twitter": "18loddi", "twitter": "18loddi",
"image": "/img/team/loddi.jpg", "image": "/img/participants/loddi.jpg",
"url": "https://open.spotify.com/show/3W7s0euoJl6Z6CD4wf45b9", "url": "https://open.spotify.com/show/3W7s0euoJl6Z6CD4wf45b9",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
@@ -349,6 +358,8 @@
}, },
"johannes": { "johannes": {
"name": "Johannes", "name": "Johannes",
"url": "https://www.youtube.com/@bitcoin-durchgespielt",
"image": "/img/participants/johannes.jpg",
"nostr": "npub1c0qfrcjzgf9mwa8cgh809ac9vvxn2ujquvzdjjrze0ejv9xyqzcqqe6n3q", "nostr": "npub1c0qfrcjzgf9mwa8cgh809ac9vvxn2ujquvzdjjrze0ejv9xyqzcqqe6n3q",
"v4v": { "v4v": {
"address": "030fd4a722cd139c2d11285cfaf9d513f59be56645af3a0fdd7b7125976b709a03" "address": "030fd4a722cd139c2d11285cfaf9d513f59be56645af3a0fdd7b7125976b709a03"
@@ -358,7 +369,7 @@
"name": "Lawrence", "name": "Lawrence",
"twitter": "LRothbardian", "twitter": "LRothbardian",
"nostr": "npub14klfpkrqert8xhqhsvyer7n6jgyumldffejchlqu8gyfpjlsca4s5fg0c3", "nostr": "npub14klfpkrqert8xhqhsvyer7n6jgyumldffejchlqu8gyfpjlsca4s5fg0c3",
"image": "/img/team/lawrence.jpg", "image": "/img/participants/lawrence.jpg",
"url": "https://shopinbit.com/", "url": "https://shopinbit.com/",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
@@ -369,7 +380,7 @@
"spok": { "spok": {
"name": "spok", "name": "spok",
"url": "https://fairtalk.tv", "url": "https://fairtalk.tv",
"image": "/img/team/spok.png", "image": "/img/participants/spok.png",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
"customKey": "696969", "customKey": "696969",
@@ -379,7 +390,7 @@
"4plus17": { "4plus17": {
"name": "4plus17", "name": "4plus17",
"url": "https://bitcoiner.bio/4plus17", "url": "https://bitcoiner.bio/4plus17",
"image": "/img/team/4plus17.jpg", "image": "/img/participants/4plus17.jpg",
"twitter": "4plus17", "twitter": "4plus17",
"nostr": "npub1m0nafh8kxzu09fgk47268u6vvepqna8a47drzc9y36s4t4u97jzsu07232", "nostr": "npub1m0nafh8kxzu09fgk47268u6vvepqna8a47drzc9y36s4t4u97jzsu07232",
"v4v": { "v4v": {
@@ -391,7 +402,7 @@
"wantclue": { "wantclue": {
"name": "WantClue", "name": "WantClue",
"url": "https://www.wantclue.de", "url": "https://www.wantclue.de",
"image": "/img/team/wantclue.jpg", "image": "/img/participants/wantclue.jpg",
"twitter": "ClueWant", "twitter": "ClueWant",
"nostr": "npub1vwf2mytkyk22x2gcmr9d7ktprakh6llwpzxqlke8rlv5j0qyx2esf2lxtw", "nostr": "npub1vwf2mytkyk22x2gcmr9d7ktprakh6llwpzxqlke8rlv5j0qyx2esf2lxtw",
"v4v": { "v4v": {
@@ -403,7 +414,7 @@
"actionslave": { "actionslave": {
"name": "actionslave", "name": "actionslave",
"nostr": "npub1zjgyjhcdpfgux7c6qmrp8yhm6yvs8p9h32urr84du3vhsnj70vlsre4e8l", "nostr": "npub1zjgyjhcdpfgux7c6qmrp8yhm6yvs8p9h32urr84du3vhsnj70vlsre4e8l",
"image": "/img/team/actionslave.jpg", "image": "/img/participants/actionslave.jpg",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
"customKey": "696969", "customKey": "696969",
@@ -416,7 +427,7 @@
"kid": { "kid": {
"name": "Kid", "name": "Kid",
"nostr": "npub1v4kfwysl44e8wrhp62ma8yek3kskn4r2jmxvx5js7wqpq7dc54ls5ejwyx", "nostr": "npub1v4kfwysl44e8wrhp62ma8yek3kskn4r2jmxvx5js7wqpq7dc54ls5ejwyx",
"image": "/img/team/kid.jpg", "image": "/img/participants/kid.jpg",
"v4v": { "v4v": {
"address": "025f4a49593dbd8b455c220bdbd8d5fc770f75264b9b2abf6d7dc91f2669efd3ae" "address": "025f4a49593dbd8b455c220bdbd8d5fc770f75264b9b2abf6d7dc91f2669efd3ae"
} }
@@ -424,23 +435,59 @@
"too bit to fail": { "too bit to fail": {
"name": "Too Bit to Fail", "name": "Too Bit to Fail",
"nostr": "npub1pzcj8yfs3kx2thtjpz3agr2w54m52kv9a2933smqyt6n6k2ql3aq2d0wlx", "nostr": "npub1pzcj8yfs3kx2thtjpz3agr2w54m52kv9a2933smqyt6n6k2ql3aq2d0wlx",
"image": "/img/team/toobittofail.jpg", "image": "/img/participants/toobittofail.jpg",
"v4v": { "v4v": {
"address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3", "address": "030a58b8653d32b99200a2334cfe913e51dc7d155aa0116c176657a4f1722677a3",
"customKey": "696969", "customKey": "696969",
"customValue": "rVstXVOghc9Jb1a1QoFz" "customValue": "rVstXVOghc9Jb1a1QoFz"
} },
"aliases": [
"TooBitToFail"
]
},
"justanothernode": {
"name": "Just Another Node",
"nostr": "npub1xhtqzpaqqynfapmwkn92anx8am3953xv4gkpncmyuwmdqdl42c5srpaydc",
"image": "/img/participants/justanothernode.jpg",
"aliases": [
"Jan"
]
}, },
"manu": { "manu": {
"name": "Manu", "name": "Manu",
"nostr": "npub1rnvr3w3n24eysawq3upwssv3c5vg6sy5zj6wapv7asetj7l2enhs8usa5v", "nostr": "npub1rnvr3w3n24eysawq3upwssv3c5vg6sy5zj6wapv7asetj7l2enhs8usa5v",
"image": "/img/participants/manu.jpg",
"v4v": { "v4v": {
"address": "03c4360e8cd8f78974c3d5c3f6dfa2fb3e02df9e66b5555a7fdbdc77cd19f723d7" "address": "03c4360e8cd8f78974c3d5c3f6dfa2fb3e02df9e66b5555a7fdbdc77cd19f723d7"
} }
}, },
"netdiver": {
"name": "NetDiver",
"nostr": "npub1z77juddgcul5la7jq578nsurpxh99633ccanngf863m4gh6gv2msm009sr",
"image": "/img/participants/netdiver.png"
},
"max": {
"name": "Max",
"url": "https://towardsliberty.com/",
"nostr": "npub1klkk3vrzme455yh9rl2jshq7rc8dpegj3ndf82c3ks2sk40dxt7qulx3vt",
"image": "/img/participants/max.jpg"
},
"alex": {
"name": "Alex",
"twitter": "Justdoitalex",
"nostr": "npub14r770s5wrqpm8jmzur5arnm9aum9x0wasaxwczael54xhjggl7ws5lygc6",
"image": "/img/participants/alex.jpg"
},
"bumi": {
"name": "Bumi",
"url": "https://getalby.com/",
"nostr": "npub1xv8mzscll8vvy5rsdw7dcqtd2j268a6yupr6gzqh86f2ulhy9kkqmclk3x",
"image": "/img/participants/bumi.jpg"
},
"snicklink": { "snicklink": {
"name": "Snicklink", "name": "Snicklink",
"twitter": "snicklink", "twitter": "snicklink",
"image": "/img/participants/snicklink.jpg",
"v4v": { "v4v": {
"address": "02324936a19ff162f5a5809db9e4d26037f21ff5b076728b9ba483ea21f8ec5d15", "address": "02324936a19ff162f5a5809db9e4d26037f21ff5b076728b9ba483ea21f8ec5d15",
"customKey": "696969", "customKey": "696969",

View File

@@ -54,10 +54,10 @@ const truncate = (str, wordCount) => {
return [head, tail] return [head, tail]
} }
// team // participants
const teamWithAliases = team => { const participantsWithAliases = participants => {
const withAliases = {} const withAliases = {}
Object.entries(team).forEach(([id, member]) => { Object.entries(participants).forEach(([id, member]) => {
withAliases[id] = member withAliases[id] = member
const aliases = (member.aliases || []).concat(member.name.toLowerCase()) const aliases = (member.aliases || []).concat(member.name.toLowerCase())
aliases.forEach(alias => { aliases.forEach(alias => {
@@ -76,7 +76,7 @@ module.exports = {
slugify, slugify,
stripHTML, stripHTML,
truncate, truncate,
teamWithAliases, participantsWithAliases,
participantToId, participantToId,
toMeetupMapInfo toMeetupMapInfo
} }

View File

@@ -28,7 +28,7 @@
"build:styles": "postcss src/css/main.css --output dist/css/main.css", "build:styles": "postcss src/css/main.css --output dist/css/main.css",
"optimize": "run-p optimize:* && run-s rev", "optimize": "run-p optimize:* && run-s rev",
"optimize:styles": "csso dist/css/main.css --output dist/css/main.css", "optimize:styles": "csso dist/css/main.css --output dist/css/main.css",
"rev": "node-file-rev --manifest=generated/rev.json --root=dist dist/css/* dist/js/* dist/img/*.svg dist/img/cover/*.png dist/img/ln/*.svg dist/img/team/*.jpg dist/img/team/*.png", "rev": "node-file-rev --manifest=generated/rev.json --root=dist dist/css/* dist/js/* dist/img/*.svg dist/img/cover/*.png dist/img/ln/*.svg dist/img/participants/*.jpg dist/img/participants/*.png",
"sitemap": "node tasks/generate_sitemap.js", "sitemap": "node tasks/generate_sitemap.js",
"prod": "cross-env NODE_ENV=production run-s build optimize build:pages sitemap" "prod": "cross-env NODE_ENV=production run-s build optimize build:pages sitemap"
}, },

View File

@@ -98,10 +98,10 @@ mixin participants(ps, link)
.participants .participants
for name in ps for name in ps
- const id = participantToId(name) - const id = participantToId(name)
- const member = team[id] - const member = participants[id]
if member if member
if link if link
a(href=`/team/${slugify(id)}` title=member.name) a(href=`/p/${slugify(id)}` title=member.name)
img.avatar(src=assetPath(member.image || "/img/avatar.svg") alt=member.name) img.avatar(src=assetPath(member.image || "/img/avatar.svg") alt=member.name)
else else
img.avatar(src=assetPath(member.image || "/img/avatar.svg") alt=member.name) img.avatar(src=assetPath(member.image || "/img/avatar.svg") alt=member.name)

View File

@@ -13,8 +13,8 @@ block main
:markdown-it(html linkify typographer) :markdown-it(html linkify typographer)
## Gründungsgeschichte ## Gründungsgeschichte
Gestartet wurde EINUNDZWANZIG im August 2019 als Podcast von [Gigi](/team/gigi) und [Markus](/team/markus). Gestartet wurde EINUNDZWANZIG im August 2019 als Podcast von [Gigi](/p/gigi) und [Markus](/p/markus).
[Fab](/team/fab), [Dennis](/team/dennis) und [Daniel](/team/daniel) ergänzten das Team [Fab](/p/fab), [Dennis](/p/dennis) und [Daniel](/p/daniel) ergänzten das p
und EINUNDZWANZIG entwickelte sich zu einer wichtigen Anlaufstelle für Bitcoin im deutschsprachigen Raum. und EINUNDZWANZIG entwickelte sich zu einer wichtigen Anlaufstelle für Bitcoin im deutschsprachigen Raum.
Es musste eine Gesellschaftsform her, bei der nicht das Kapital, sondern die Gemeinschaft und der Ethos Es musste eine Gesellschaftsform her, bei der nicht das Kapital, sondern die Gemeinschaft und der Ethos
von Bitcoin zählt. Wir haben uns daher für einen Verein entschieden — ein wenig mehr zu den Überlegungen von Bitcoin zählt. Wir haben uns daher für einen Verein entschieden — ein wenig mehr zu den Überlegungen
@@ -26,8 +26,8 @@ block main
- Gründungsdatum: 21. April 2021 - Gründungsdatum: 21. April 2021
- Zweck: Vorbereitung der Gesellschaft auf die Hyperbitcoinization - Zweck: Vorbereitung der Gesellschaft auf die Hyperbitcoinization
- Kontoführung: Bitcoin-only via Multisig und Lightning Node - Kontoführung: Bitcoin-only via Multisig und Lightning Node
- Präsidium: [Gambler](/team/gmblr247) und [Paddepadde](/team/paddepadde) - Präsidium: [Gambler](/p/gmblr247) und [Paddepadde](/p/paddepadde)
- Vorstand: [Chris](/team/chris), [The Ben](/team/holgerhatgarkeinenode), [Markus](/team/markus), [Gambler](/team/gmblr247) und [Paddepadde](/team/paddepadde) - Vorstand: [Chris](/p/chris), [The Ben](/p/holgerhatgarkeinenode), [Markus](/p/markus), [Gambler](/p/gmblr247) und [Paddepadde](/p/paddepadde)
## Statuten ## Statuten

View File

@@ -26,6 +26,7 @@
/podcast/verschiedenes-233-stacking-until-midnight/ /podcast/news-233-stacking-until-midnight/ /podcast/verschiedenes-233-stacking-until-midnight/ /podcast/news-233-stacking-until-midnight/
/podcast/nostrtalk-11-sei-dein-eigener-held/ /podcast/filterfrei-1-sei-dein-eigener-held/ /podcast/nostrtalk-11-sei-dein-eigener-held/ /podcast/filterfrei-1-sei-dein-eigener-held/
/team/MarkusTurm /team/markus /p/MarkusTurm /p/markus
/team/fabthefoxx /team/fab /p/fabthefoxx /p/fab
/team/gambler /team/gmblr247 /p/gambler /p/gmblr247
/team/* /p/:splat

View File

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 49 KiB

View File

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

View File

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 KiB

View File

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

Before

Width:  |  Height:  |  Size: 69 KiB

After

Width:  |  Height:  |  Size: 69 KiB

View File

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View File

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View File

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB

View File

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View File

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 35 KiB

View File

Before

Width:  |  Height:  |  Size: 116 KiB

After

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

View File

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

Before

Width:  |  Height:  |  Size: 7.0 KiB

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

View File

Before

Width:  |  Height:  |  Size: 183 KiB

After

Width:  |  Height:  |  Size: 183 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

View File

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 76 KiB

View File

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 37 KiB

View File

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

View File

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 50 KiB

View File

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 172 KiB

View File

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 332 KiB

View File

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 32 KiB

View File

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 39 KiB

View File

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 49 KiB

View File

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View File

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

View File

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

View File

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB

View File

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

Before

Width:  |  Height:  |  Size: 9.9 KiB

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -1,8 +1,8 @@
const { writeFileSync } = require('fs') const { writeFileSync } = require('fs')
const { join, resolve } = require('path') const { join, resolve } = require('path')
const { replacements, slugify, stripHTML, teamWithAliases, participantToId } = require('../helpers') const { replacements, slugify, stripHTML, participantsWithAliases, participantToId } = require('../helpers')
const { masterFeedUrl, publicFeedUrl, nodeId } = require('../content/meta.json') const { masterFeedUrl, publicFeedUrl, nodeId } = require('../content/meta.json')
const teamRaw = require('../content/team.json') const participantsRaw = require('../content/participants.json')
const request = require('sync-request') const request = require('sync-request')
const { XMLParser, XMLBuilder, XMLValidator } = require('fast-xml-parser') const { XMLParser, XMLBuilder, XMLValidator } = require('fast-xml-parser')
const xmlFormat = require('xml-formatter') const xmlFormat = require('xml-formatter')
@@ -13,7 +13,7 @@ const write = (name, data) => writeFileSync(join(dir, name), data)
const writeJSON = (name, data) => const writeJSON = (name, data) =>
write(`generated/${name}.json`, JSON.stringify(data, null, 2)) write(`generated/${name}.json`, JSON.stringify(data, null, 2))
const team = teamWithAliases(teamRaw) const participants = participantsWithAliases(participantsRaw)
const commonOpts = { const commonOpts = {
attributeNamePrefix: '', attributeNamePrefix: '',
@@ -166,7 +166,7 @@ const parseEpisode = e => {
const value = episode.participants.reduce((result, name) => { const value = episode.participants.reduce((result, name) => {
const id = participantToId(name) const id = participantToId(name)
const v4v = team[id] && team[id].v4v const v4v = participants[id] && participants[id].v4v
if (v4v) { if (v4v) {
result.push({ name, ...v4v }) result.push({ name, ...v4v })
} else if (debug) { } else if (debug) {
@@ -195,7 +195,7 @@ const parseEpisode = e => {
const people = episode.participants.reduce((result, name) => { const people = episode.participants.reduce((result, name) => {
const id = participantToId(name) const id = participantToId(name)
const person = team[id] const person = participants[id]
if (person) { if (person) {
result.push(person) result.push(person)
} }

View File

@@ -1,7 +1,7 @@
const { mkdirSync, writeFileSync } = require('fs') const { mkdirSync, writeFileSync } = require('fs')
const { dirname, resolve } = require('path') const { dirname, resolve } = require('path')
const { NDKUser } = require('@nostr-dev-kit/ndk') const { NDKUser } = require('@nostr-dev-kit/ndk')
const team = require('../content/team.json') const participants = require('../content/participants.json')
const { npub } = require('../content/meta.json') const { npub } = require('../content/meta.json')
const einundzwanzig = new NDKUser({ npub: npub.einundzwanzig }) const einundzwanzig = new NDKUser({ npub: npub.einundzwanzig })
@@ -19,7 +19,7 @@ const relays = {
] ]
} }
Object.entries(team).forEach(([key, { nostr: npub }]) => { Object.entries(participants).forEach(([key, { nostr: npub }]) => {
if (!npub) return if (!npub) return
const id = key.replace(/[\s]/g, '_') const id = key.replace(/[\s]/g, '_')
names[id] = new NDKUser({ npub }).pubkey names[id] = new NDKUser({ npub }).pubkey

View File

@@ -1,13 +1,13 @@
const pug = require('pug') const pug = require('pug')
const { mkdirSync, writeFileSync } = require('fs') const { mkdirSync, writeFileSync } = require('fs')
const { dirname, resolve } = require('path') const { dirname, resolve } = require('path')
const { slugify, teamWithAliases, participantToId } = require('../helpers') const { slugify, participantsWithAliases, participantToId } = require('../helpers')
const config = require('../pug.config') const config = require('../pug.config')
const site = require('../generated/site-data.json') const site = require('../generated/site-data.json')
const episodes = require('../generated/episodes.json') const episodes = require('../generated/episodes.json')
const spendenregister = require('../generated/spendenregister.json') const spendenregister = require('../generated/spendenregister.json')
const spendenuebersicht = require('../content/spendenuebersicht.json').reverse() const spendenuebersicht = require('../content/spendenuebersicht.json').reverse()
const teamRaw = require('../content/team.json') const participantsRaw = require('../content/participants.json')
const shops = require('../content/shops.json') const shops = require('../content/shops.json')
const soundboard = require('../content/soundboard.json') const soundboard = require('../content/soundboard.json')
const adventskalender = require('../content/adventskalender-2022.json') const adventskalender = require('../content/adventskalender-2022.json')
@@ -23,7 +23,7 @@ const categories = {
'verschiedenes': 'Verschiedenes' 'verschiedenes': 'Verschiedenes'
} }
const team = teamWithAliases(teamRaw) const participants = participantsWithAliases(participantsRaw)
const changedFile = process.argv.length > 2 && process.argv[2] const changedFile = process.argv.length > 2 && process.argv[2]
@@ -44,8 +44,8 @@ const renderPage = (template, out, data = {}) => {
writeFileSync(dst, rendered) writeFileSync(dst, rendered)
} }
renderPage('index', 'index', { navCurrent: 'index', currentEpisode: episodes[0], team }) renderPage('index', 'index', { navCurrent: 'index', currentEpisode: episodes[0], participants })
renderPage('podcast', 'podcast', { navCurrent: 'podcast', episodes: [...episodes], team }) renderPage('podcast', 'podcast', { navCurrent: 'podcast', episodes: [...episodes], participants })
renderPage('gesundes-geld', 'gesundes-geld', { meetups: site.meetups, upcomingMeetups: site.upcomingMeetups }) renderPage('gesundes-geld', 'gesundes-geld', { meetups: site.meetups, upcomingMeetups: site.upcomingMeetups })
renderPage('meetups', 'meetups', { navCurrent: 'meetups', meetups: site.meetups, upcomingMeetups: site.upcomingMeetups }) renderPage('meetups', 'meetups', { navCurrent: 'meetups', meetups: site.meetups, upcomingMeetups: site.upcomingMeetups })
renderPage('spenden', 'spenden', { navCurrent: 'spenden', spendenregister, spendenuebersicht }) renderPage('spenden', 'spenden', { navCurrent: 'spenden', spendenregister, spendenuebersicht })
@@ -57,11 +57,11 @@ renderPage('kontakt', 'kontakt', { navCurrent: 'kontakt' })
renderPage('datenschutz', 'datenschutz', { navCurrent: 'datenschutz' }) renderPage('datenschutz', 'datenschutz', { navCurrent: 'datenschutz' })
renderPage('adventskalender', 'adventskalender', { adventskalender }) renderPage('adventskalender', 'adventskalender', { adventskalender })
episodes.forEach(episode => renderPage('episode', `podcast/${episode.slug}`, { navCurrent: 'podcast', episode, team })) episodes.forEach(episode => renderPage('episode', `podcast/${episode.slug}`, { navCurrent: 'podcast', episode, participants }))
Object.keys(categories).forEach(category => renderPage('category', `podcast/${slugify(categories[category])}`, { navCurrent: 'podcast', category, categoryName: categories[category], episodes: episodes.filter(e => e.category === category), team })) Object.keys(categories).forEach(category => renderPage('category', `podcast/${slugify(categories[category])}`, { navCurrent: 'podcast', category, categoryName: categories[category], episodes: episodes.filter(e => e.category === category), participants }))
Object.keys(teamRaw).forEach(id => { Object.keys(participantsRaw).forEach(id => {
const member = teamRaw[id] const member = participantsRaw[id]
const aliases = (member.aliases || []).map(m => m.toLowerCase()).concat(member.name.toLowerCase()) const aliases = (member.aliases || []).map(m => m.toLowerCase()).concat(member.name.toLowerCase())
const eps = episodes.filter(e => e.participants.find(p => [id, ...aliases].includes(participantToId(p)))) const eps = episodes.filter(e => e.participants.find(p => [id, ...aliases].includes(participantToId(p))))
renderPage('member', `team/${slugify(id)}`, { navCurrent: 'podcast', member, episodes: eps, team }) renderPage('member', `p/${slugify(id)}`, { navCurrent: 'podcast', member, episodes: eps, participants })
}) })