Merge pull request 'Adds cards overview from hamburg.hackertours.de' (#6) from feat/homepage-event-cards into main
All checks were successful
/ build (push) Successful in 12s

Reviewed-on: #6
Reviewed-by: stb <stb@noreply.git.hamburg.ccc.de>
This commit is contained in:
stb 2026-11-14 18:36:54 +01:00
commit c3e4d3c9cf
16 changed files with 385 additions and 54 deletions

View file

@ -11,3 +11,31 @@ docker run -it --rm --name hackertours -p 8888:80 hackertours
```
Then open http://localhost:8888
## Event cards
The localized homepages use the `event-cards` shortcode and their `events` front
matter. Cards display in two columns from 666px and in a single column on mobile.
The list covers all host cities, including Easterhegg in Koblenz and Regensburg.
Event logos are SVGs or PNGs in `assets/img/events`, rendered as masks
in the heading color. Set `logoOriginal: true` to display original colors
instead (used by EH20):
- [37C3](https://designs.events.ccc.de/37C3/37c3-logo-full-black.svg),
[38C3](https://designs.events.ccc.de/38C3/logo-simple.svg), and
[39C3](https://designs.events.ccc.de/39C3/39C3-Logo-RGB_muted-black.svg)
are from the [CCC design archive](https://designs.events.ccc.de/).
- [EH21](https://designs.events.ccc.de/EH21/EH21-Logo.svg) is also from the archive.
- EH20 uses the supplied `EH20-Logo.png`, unchanged.
- EH23 uses the supplied `EH23-Logo (1).svg` wordmark and symbol, with its
background removed and artwork changed to white. Other logos are unmodified.
- [40C3](https://events.ccc.de/congress/2026/infos/assets/favicon.svg) is the
official info-page symbol; the archive has no 40C3 entry yet.
- [EH22](https://git.hamburg.ccc.de/EH22/design-public/src/branch/main/logo/logo_simple.svg)
is the original vector logo by kritzl, traumweh & Schrottkatze,
[CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/).
The archive's raster logo includes a glow unsuitable for masking.
Designer credits from the archive and the EH22 license appear beside the copyright
in the homepage footer only, in both languages. Missing archive credits (40C3,
EH21, EH20) are explicitly marked as unlisted.

View file

@ -0,0 +1,7 @@
<svg width="205" height="72" viewBox="0 0 205 72" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1.80225 30.4511H25.8893V27.7522L8.06572 26.7141V20.3486L25.8893 19.3105V16.6116H1.80225V0.560333H30.1276C43.7128 0.560333 48.5303 3.74312 48.5303 12.7373C48.5303 18.6877 44.2428 22.2857 36.7754 22.7009V23.8076C45.5907 25.0533 48.5303 27.6819 48.5303 34.3254C48.5303 42.0755 43.4233 44.8431 28.9728 44.8431H1.80225V30.4511Z" fill="black"/>
<path d="M73.5752 19.2418H51.8011V0.560333H97.6622V16.4743L80.5617 44.8431H57.6311L73.5768 19.2418H73.5752Z" fill="black"/>
<path d="M100.783 22.7712C100.783 6.09548 108.105 0.560333 119.619 0.560333H152.569V20.7638H122.364V26.3676H152.569V44.8415H121.739C108.733 44.8415 100.783 39.7902 100.783 22.7696V22.7712Z" fill="black"/>
<path d="M157.554 30.4511H181.641V27.7522L163.818 26.7141V20.3486L181.641 19.3105V16.6116H157.554V0.560333H185.88C199.465 0.560333 204.281 3.74312 204.281 12.7373C204.281 18.6877 199.993 22.2857 192.527 22.7009V23.8076C201.343 25.0533 204.281 27.6819 204.281 34.3254C204.281 42.0755 199.174 44.8431 184.723 44.8431H157.554V30.4511Z" fill="black"/>
<path d="M2.93594 66.6447H1.80312L1.80312 53.0509H4.06875L4.06875 65.5118H5.20156L5.20156 66.6447H9.73281V65.5118H10.8656L10.8656 53.0509H13.1312L13.1312 66.6447H11.9984V67.7775H10.8656V68.9103H4.06875V67.7775H2.93594V66.6447ZM31.1185 59.8478L31.1185 68.9103H28.8529L28.8529 53.0509H31.1185V56.4493H32.2513V57.5822H33.3841V58.715H34.5169V59.8478H35.6498V60.9806L36.7826 60.9806V62.1134H37.9154V53.0509H40.181V68.9103H37.9154V65.5118H36.7826V64.379H35.6498V63.2462H34.5169V62.1134H33.3841V60.9806H32.2513V59.8478H31.1185ZM55.9026 68.9103V53.0509H58.1683V66.6447H67.2308V68.9103H55.9026ZM90.8821 55.3165H86.3508V56.4493H85.218V65.5118H86.3508V66.6447H90.8821V65.5118H92.0149V56.4493H90.8821V55.3165ZM82.9524 55.3165L84.0852 55.3165V54.1837H85.218V53.0509H92.0149V54.1837H93.1477V55.3165H94.2805V66.6447H93.1477V67.7775H92.0149V68.9103H85.218V67.7775H84.0852V66.6447H82.9524V55.3165ZM113.401 66.6447H117.932V65.5118H119.065V64.379H121.33V66.6447H120.197V67.7775H119.065V68.9103H112.268V67.7775H111.135V66.6447H110.002V55.3165H111.135V54.1837H112.268V53.0509H119.065V54.1837H120.197V55.3165H121.33V57.5822H119.065V56.4493H117.932V55.3165H113.401V56.4493H112.268V65.5118H113.401V66.6447ZM139.318 62.1134V68.9103H137.052V53.0509H139.318V59.8478H140.45V58.715H141.583V57.5822H142.716V56.4493H143.849V55.3165H144.982V54.1837H146.114V53.0509H148.38V55.3165H147.247V56.4493H146.114V57.5822H144.982V58.715H143.849V59.8478H142.716V62.1134H143.849V63.2462H144.982V64.379H146.114V65.5118H147.247V66.6447H148.38V68.9103H146.114V67.7775H144.982V66.6447H143.849V65.5118H142.716V64.379H141.583V63.2462H140.45V62.1134H139.318ZM175.43 53.0509V55.3165H166.367V59.8478H173.164V62.1134H166.367V66.6447H175.43V68.9103H164.102V53.0509H175.43ZM193.417 55.3165V66.6447H199.081V65.5118H200.214V56.4493H199.081V55.3165H193.417ZM191.151 53.0509L200.214 53.0509V54.1837H201.347V55.3165H202.479V66.6447H201.347V67.7775H200.214V68.9103H191.151V53.0509Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 3 KiB

View file

@ -0,0 +1,3 @@
<svg width="914" height="240" viewBox="0 0 914 240" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M167.29 123.402C196.134 111.569 221.152 125.768 221.152 152.689C221.152 206.529 156.988 237 81.639 237C28.954 237 11 224.871 11 206.234C11 196.767 16.004 187.892 38.078 189.963L167.584 201.5C184.655 202.979 192.308 194.992 192.308 186.709C192.308 178.13 185.538 172.213 167.584 169.847L62.214 156.83C39.844 154.168 32.192 140.56 32.192 126.36C32.192 115.414 36.312 101.51 62.214 93.227L177.003 56.545C190.836 52.107 193.191 46.191 193.191 38.795C192.896 29.328 184.067 27.849 176.708 29.92L73.987 60.39C53.089 66.603 13.649 80.211 11.294 40.274C9.823 16.608 28.954 7.437 53.384 7.437H162.58C193.779 7.437 209.379 21.933 209.379 41.457C209.379 52.403 201.726 63.349 188.481 72.815L100.771 134.051C88.998 142.335 94.884 153.28 108.424 147.66L167.29 123.402ZM249.862 52.995C249.862 33.47 268.11 3 333.158 3C420.868 3.591 450.89 22.228 450.89 52.699C450.89 69.857 444.709 75.478 423.517 85.24L374.658 107.723C370.832 109.498 369.066 111.864 369.949 115.414C370.538 118.077 372.892 120.443 379.368 120.739L403.503 121.627C437.351 122.81 453.539 139.672 453.539 179.905C453.539 217.179 414.982 236.704 359.353 236.704C293.423 236.112 238.972 226.054 238.972 175.467C238.972 146.772 248.685 126.952 282.827 124.289L315.203 121.627C321.973 121.035 324.328 117.781 324.328 113.935C324.328 110.089 321.384 106.835 316.675 105.652C267.522 93.227 249.862 79.323 249.862 52.995ZM369.36 134.643C353.172 123.402 343.753 122.514 326.682 134.643L268.11 176.651C259.575 182.863 260.458 194.105 273.114 194.105L425.872 193.217C437.645 193.217 439.117 183.455 430.287 177.242L369.36 134.643ZM331.392 95.298C337.573 108.906 350.523 108.906 362.002 100.623L401.148 72.815C409.978 66.603 410.861 58.911 399.971 53.586L328.154 18.679C309.905 9.804 295.483 17.791 303.136 34.062L331.392 95.298ZM569.018 3C624.94 3 676.448 40.866 676.448 66.899C676.448 88.494 648.193 104.173 625.235 77.252L581.968 26.37C555.184 -4.988 503.676 43.824 544.883 65.715L561.071 74.294C585.795 87.606 577.259 113.639 556.361 119.556L503.382 134.347C491.02 137.897 491.609 148.547 503.088 155.647L598.156 213.629C611.696 221.912 619.054 213.038 616.699 199.725L611.696 171.622C608.752 154.759 608.752 129.022 633.476 126.36C663.498 123.106 672.328 142.335 672.328 163.043C672.328 201.5 639.068 236.704 582.557 236.704C514.861 236.704 467.474 186.117 467.474 115.71C467.474 52.403 499.556 3 569.018 3ZM848.138 123.402C876.982 111.569 902 125.768 902 152.689C902 206.529 837.836 237 762.487 237C709.802 237 691.848 224.871 691.848 206.234C691.848 196.767 696.851 187.892 718.926 189.963L848.432 201.5C865.503 202.979 873.156 194.992 873.156 186.709C873.156 178.13 866.386 172.213 848.432 169.847L743.061 156.83C720.692 154.168 713.04 140.56 713.04 126.36C713.04 115.414 717.16 101.51 743.061 93.227L857.85 56.545C871.684 52.107 874.039 46.191 874.039 38.795C873.744 29.328 864.914 27.849 857.556 29.92L754.835 60.39C733.937 66.603 694.497 80.211 692.142 40.274C690.67 16.608 709.802 7.437 734.231 7.437H843.428C874.627 7.437 890.227 21.933 890.227 41.457C890.227 52.403 882.574 63.349 869.329 72.815L781.619 134.051C769.845 142.335 775.732 153.28 789.271 147.66L848.138 123.402Z" fill="#FF5053" stroke="#FF5053" stroke-width="4.5" stroke-miterlimit="2" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View file

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg id="logo" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 69.9">
<path d="M113.72.49c3.97,0,7.52.74,10.65,2.21,3.13,1.41,5.6,3.55,7.39,6.43,1.86,2.88,2.78,6.43,2.78,10.65v27.54c0,4.99-.9,9.15-2.69,12.48-1.79,3.26-4.25,5.69-7.39,7.29-3.07,1.54-6.56,2.3-10.46,2.3h-19.87c-3.84,0-7.29-.7-10.36-2.11-3.07-1.41-5.5-3.55-7.29-6.43-1.79-2.88-2.69-6.4-2.69-10.56v-3.93h2.78v4.03c0,5.37,1.66,9.44,4.99,12.19,3.33,2.75,7.52,4.13,12.57,4.13h19.87c3.33,0,6.3-.64,8.93-1.92,2.69-1.34,4.83-3.45,6.43-6.33,1.6-2.88,2.4-6.53,2.4-10.94v-16.41h-1.63l1.73-3.07c-.06,1.92-.93,3.81-2.59,5.66-1.6,1.86-3.81,3.36-6.62,4.51-2.75,1.09-5.82,1.63-9.21,1.63h-20.06c-3.84,0-7.33-.67-10.46-2.02-3.07-1.41-5.53-3.52-7.39-6.33-1.79-2.82-2.69-6.27-2.69-10.36v-1.82c0-4.03.9-7.45,2.69-10.27,1.86-2.88,4.35-5.02,7.49-6.43,3.2-1.41,6.75-2.11,10.65-2.11h20.06ZM93.76,3.28c-5.18,0-9.5,1.34-12.96,4.03-3.39,2.69-5.09,6.69-5.09,12v1.82c0,5.31,1.7,9.31,5.09,12,3.45,2.62,7.74,3.93,12.86,3.93h19.96c5.31,0,9.66-1.31,13.05-3.93,3.39-2.69,5.09-6.69,5.09-12v-1.82c0-5.31-1.7-9.31-5.09-12-3.39-2.69-7.74-4.03-13.05-4.03h-19.87ZM20.35,69.11c-3.65,0-7.01-.64-10.08-1.92-3.07-1.28-5.57-3.26-7.49-5.95-1.86-2.69-2.78-5.98-2.78-9.88v-4.99h2.88v4.99c0,5.05,1.7,8.83,5.09,11.32,3.45,2.43,7.61,3.65,12.48,3.65h18.23c2.94,0,5.76-.51,8.45-1.54,2.75-1.09,4.96-2.72,6.62-4.89,1.73-2.24,2.59-4.99,2.59-8.25v-1.73c0-4.99-1.66-8.7-4.99-11.13-3.26-2.43-7.9-3.65-13.92-3.65h-21.21v-2.78L50.29,4.62v-.48H1.92V1.36h53.45v2.88L21.31,31.88v1.44l-2.4-.86h18.81c6.78,0,12.06,1.5,15.83,4.51,3.77,2.94,5.66,7.26,5.66,12.96v1.63c0,3.77-.96,7.01-2.88,9.69-1.86,2.62-4.35,4.61-7.49,5.95-3.14,1.28-6.53,1.92-10.17,1.92h-18.33ZM255.09,69.59c-5.05,0-9.47-.74-13.24-2.21-3.78-1.47-6.72-3.74-8.83-6.81s-3.17-6.94-3.17-11.61v-2.21h21.5v2.21c0,1.02.16,1.82.48,2.4.32.51.83.9,1.54,1.15.7.19,1.66.29,2.88.29h17.08c1.22,0,2.18-.13,2.88-.38.77-.32,1.31-.77,1.63-1.34.38-.64.58-1.38.58-2.21v-1.44c0-1.28-.45-2.27-1.34-2.98-.9-.7-2.11-1.06-3.65-1.06h-31.29v-13.82l17.95-8.83v-1.54h-27.06V1.36h62.67v17.47l-19.67,9.88v3.93l-19-2.5h23.03c6.21,0,11.07,1.54,14.59,4.61,3.58,3.07,5.37,7.45,5.37,13.15v1.34c0,4.41-.99,8.13-2.98,11.13-1.98,3.01-4.86,5.31-8.64,6.91-3.78,1.54-8.38,2.3-13.82,2.3h-19.48ZM174.86,69.59c-10.04,0-17.75-2.5-23.13-7.49-5.31-5.05-7.97-12.89-7.97-23.51v-7.1c0-10.68,2.65-18.55,7.97-23.61,5.37-5.05,13.08-7.58,23.13-7.58h23.03c6.21,0,11.45,1.02,15.74,3.07,4.35,2.05,7.71,5.25,10.08,9.6,2.37,4.35,3.55,9.92,3.55,16.7v2.4h-22.36v-2.4c-.06-2.62-.35-4.67-.86-6.14-.51-1.47-1.34-2.53-2.5-3.17-1.09-.7-2.59-1.06-4.51-1.06h-20.92c-3.07,0-5.34.96-6.81,2.88-1.41,1.86-2.11,4.93-2.11,9.21v7.39c0,4.16.7,7.17,2.11,9.02,1.47,1.86,3.74,2.78,6.81,2.78h20.92c1.92,0,3.42-.32,4.51-.96,1.15-.64,1.98-1.7,2.5-3.17.58-1.54.86-3.58.86-6.14v-1.92h22.36v1.82c0,6.78-1.18,12.35-3.55,16.7-2.3,4.35-5.63,7.55-9.98,9.6-4.35,2.05-9.63,3.07-15.83,3.07h-23.03Z" fill="#141414"/>
</svg>

After

Width:  |  Height:  |  Size: 2.9 KiB

View file

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg id="Ebene_2" data-name="Ebene 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 67.65 88.42">
<defs>
<style>
.cls-1 {
fill: #75b44b;
}
</style>
</defs>
<g id="Content">
<g>
<path class="cls-1" d="M51.97,18.24l6.34-6.34-3.22-3.22-7.19,7.19c-3.93-2.29-7.87-4.57-11.8-6.86V0h-4.55v9.02c-3.93,2.29-7.87,4.57-11.8,6.86l-7.19-7.19-3.22,3.22,6.34,6.34C10.45,21.28,5.23,24.32,0,27.35c11.27,6.55,22.55,13.11,33.82,19.66,11.27-6.55,22.55-13.11,33.82-19.66-5.23-3.04-10.45-6.08-15.68-9.11ZM33.82,37.52c-5.61,0-10.16-4.55-10.16-10.16s4.55-10.16,10.16-10.16,10.16,4.55,10.16,10.16-4.55,10.16-10.16,10.16Z"/>
<g>
<path class="cls-1" d="M31.08,51.75l-14.55-8.4v36.67l14.55,8.4v-36.67ZM26.91,68.28v9.22c-1.07-.52-2.18-1.08-3.31-1.69-1.16-.62-2.26-1.25-3.31-1.88v-17.55c1.09.61,2.19,1.23,3.31,1.84,1.11.61,2.21,1.21,3.31,1.8v8.27Z"/>
<path class="cls-1" d="M53.06,47.19v6.43c1.76-1.2,3.57-2.48,5.41-3.85,1.82-1.36,3.55-2.71,5.2-4.04.03,2.22.04,3.36.07,5.66-2.93,1.8-5.84,3.62-8.75,5.45.04,2.36.07,4.73.11,7.09,2.9-1.79,5.8-3.57,8.73-5.31.03,2.27.04,3.4.07,5.57-1.4.6-2.82,1.2-4.26,1.8-2.24.93-4.46,1.82-6.65,2.69v9.99l14.66-8.46c-.02-12.2-.11-24.4-.13-36.6l-14.45,8.34v5.24Z"/>
<path class="cls-1" d="M12.6,53.6c-.8.32-1.66.64-2.57.94-.87.29-1.7.54-2.5.76l-.24,5.51c-1.8-1.01-2.7-1.52-4.53-2.59,1.15-4.24,2.33-8.47,3.54-12.7.66-2.31,1.34-4.62,2.03-6.93L0,33.8v33.02c1.38.75,2.75,1.51,4.13,2.26.91.5,1.83,1,2.74,1.5-.07,1.51-.13,2.52-.19,3.75l5.92,3.42v-24.14Z"/>
<path class="cls-1" d="M40.5,77.55c.02-6.09.06-12.18.09-18.26,2.93-1.35,5.84-2.76,8.73-4.2v-10.98l-13.16,7.6c0,6.09,0,12.18,0,18.26,0,6.14,0,12.27,0,18.41l13.16-7.6v-10.75c-2.91,2.56-5.84,5.07-8.82,7.53Z"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
assets/img/events/eh20.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 28 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 37 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 12 KiB

View file

@ -24,8 +24,95 @@ th, td {
padding: 3px 6px;
font-variant-numeric: tabular-nums;
}
.event-cards {
--event-card-border: rgb(0 0 0 / 15%);
--event-card-upcoming-bg: #eee;
--event-card-upcoming-text: #595959;
display: grid;
grid-template-columns: minmax(0, 1fr);
gap: var(--spacing-m);
margin-block: var(--spacing-m);
}
@media (min-width: 666px) {
.event-cards {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
.event-card {
min-width: 0;
overflow: hidden;
border: 1px solid var(--event-card-border);
border-radius: 0.25rem;
}
.event-card--upcoming {
background: var(--event-card-upcoming-bg);
color: var(--event-card-upcoming-text);
}
.event-card--upcoming h3 {
color: inherit;
}
.event-card__header {
display: flex;
align-items: center;
justify-content: space-between;
gap: 1rem;
padding: var(--spacing-xs) 1rem;
border-bottom: 1px solid var(--event-card-border);
color: var(--color-headings);
}
.event-card__logo,
.event-card__image {
flex-shrink: 0;
width: 10rem;
max-width: 60%;
height: 2rem;
}
.event-card__image {
object-fit: contain;
object-position: right center;
}
.event-card__logo {
background-color: currentcolor;
mask: var(--event-logo) right center / contain no-repeat;
}
.event-card__header h2,
.event-card__body h3 {
margin: 0;
}
.event-card__body {
padding: var(--spacing-xs) 1rem;
}
.event-card__body p {
margin-block: var(--spacing-xs);
}
.event-card__body .event-card__date {
margin-bottom: 0;
}
.event-card__body .event-card__status {
margin-block: 0.5em 0;
padding: 0.1rem 0.5rem;
border: 1px solid currentcolor;
border-radius: 0.25rem;
font-size: var(--fs-xs);
font-weight: bold;
letter-spacing: 0.03em;
text-align: center;
text-transform: uppercase;
}
.event-logo-credits {
font-size: var(--fs-xs);
}
.event-logo-credits ul {
padding: 0;
list-style: none;
}
@media (prefers-color-scheme: dark) {
.event-cards {
--event-card-border: rgb(255 255 255 / 15%);
--event-card-upcoming-bg: #363636;
--event-card-upcoming-text: #a6a6a6;
}
:root {
--color-backdrop: #141414;
--color-headings: #faf5f5;

View file

@ -7,38 +7,65 @@ params:
Bei verschiedenen Chaos-Veranstaltungen organisiert der lokale Erfa/Chaostreff Touren zu interessanten Orten in der Stadt und Umgebung. Hier findet ihr Informationen zu aktuellen und früheren Veranstaltungen!
logowidth: 220
logoheight: 220
eventsTitle: Veranstaltungen
events:
- code: 40C3
title: Model Citizens
event: 40. Chaos Communication Congress
date: 27.–30. Dezember 2026
location: Hamburg Messe
url: https://events.ccc.de/congress/2026/
status: In Vorbereitung
- code: EH23
title: The Bunny is a Lie
event: Easterhegg 2026
date: 3.–6. April 2026
location: Universität Koblenz
url: https://eh23.easterhegg.eu/hackertours
- code: 39C3
title: Power Cycles
event: 39. Chaos Communication Congress
date: 27.–30. Dezember 2025
location: CCH
url: https://events.ccc.de/congress/2025/
- code: EH22
title: Unhandled Eggception
event: Easterhegg 2025
date: 18.–21. April 2025
location: Kampnagel
url: https://eh22.easterhegg.eu/
- code: 38C3
title: Illegal Instructions
event: 38. Chaos Communication Congress
date: 27.–30. Dezember 2024
location: CCH
url: https://events.ccc.de/congress/2024/
- code: EH21
title: RABBIT PROTOTYPING
event: Easterhegg 2024
date: 29. März–1. April 2024
location: OTH Regensburg
url: https://eh21.easterhegg.eu/hackertours
- code: 37C3
title: Unlocked
event: 37. Chaos Communication Congress
date: 27.–30. Dezember 2023
location: CCH
url: https://events.ccc.de/congress/2023/
- code: EH20
logoOriginal: true
title: Back to root
event: Easterhegg 2023
date: 7.–10. April 2023
location: Kampnagel, Hamburg
url: https://eh20.easterhegg.eu/hackertours.html
cascade:
params:
intro: Euer Anbieter für Sightseeing für Technik-Enthusiasten!
---
# Aktuelle Events
{{< event-cards >}}
* 40C3 Hackertours: In Planung...
# Frühere Events
## 2026
* [Easteregg 2026 Hackertours](https://eh23.easterhegg.eu/hackertours)
## 2025
* [Easterhegg 2025 Hackertours](https://hackertours.hamburg.ccc.de/en/eh22/)
* [39C3 Hackertours](https://hackertours.hamburg.ccc.de/en/39c3/)
## 2024
* [38C3 Hackertours](https://hackertours.hamburg.ccc.de/de/38c3/)
* [Easterhegg 2024 Hackertours](https://eh21.easterhegg.eu/hackertours)
## 2023
* [37C3 Hackertours](https://hackertours.hamburg.ccc.de/de/37c3/)
* [Easterhegg 2023 Hackertours](https://eh20.easterhegg.eu/hackertours.html)
Folgt uns unter <a rel="me" href="https://chaos.social/@hackertours">@hackertours@chaos.social!</a>
Folgt uns unter [@hackertours@chaos.social](https://chaos.social/@hackertours)!
# News

View file

@ -7,39 +7,66 @@ params:
At various Chaos events the local club organizes tours to interesting places in the city and surroundings. Here you will find infos about current and past events!
logowidth: 220
logoheight: 220
eventsTitle: Events
events:
- code: 40C3
title: Model Citizens
event: 40th Chaos Communication Congress
date: 27–30 December 2026
location: Hamburg Messe
url: https://events.ccc.de/congress/2026/
status: In preparation
- code: EH23
title: The Bunny is a Lie
event: Easterhegg 2026
date: 3–6 April 2026
location: University of Koblenz
url: https://eh23.easterhegg.eu/hackertours
- code: 39C3
title: Power Cycles
event: 39th Chaos Communication Congress
date: 27–30 December 2025
location: CCH
url: https://events.ccc.de/congress/2025/
- code: EH22
title: Unhandled Eggception
event: Easterhegg 2025
date: 18–21 April 2025
location: Kampnagel
url: https://eh22.easterhegg.eu/
- code: 38C3
title: Illegal Instructions
event: 38th Chaos Communication Congress
date: 27–30 December 2024
location: CCH
url: https://events.ccc.de/congress/2024/
- code: EH21
title: RABBIT PROTOTYPING
event: Easterhegg 2024
date: 29 March–1 April 2024
location: OTH Regensburg
url: https://eh21.easterhegg.eu/hackertours
- code: 37C3
title: Unlocked
event: 37th Chaos Communication Congress
date: 27–30 December 2023
location: CCH
url: https://events.ccc.de/congress/2023/
- code: EH20
logoOriginal: true
title: Back to root
event: Easterhegg 2023
date: 7–10 April 2023
location: Kampnagel, Hamburg
url: https://eh20.easterhegg.eu/hackertours.html
cascade:
params:
intro: Your provider of sightseeing tours for technical enthusiasts!
---
# Current Events
{{< event-cards >}}
* 40C3 Hackertours: Planning...
# Previous Events
## 2026
* [Easteregg 2026 Hackertours](https://eh23.easterhegg.eu/hackertours)
## 2025
* [Easterhegg 2025 Hackertours](https://hackertours.hamburg.ccc.de/en/eh22/)
* [39C3 Hackertours](https://hackertours.hamburg.ccc.de/en/39c3/)
## 2024
* [38C3 Hackertours](https://hackertours.hamburg.ccc.de/en/38c3/)
* [Easterhegg 2024 Hackertours](https://eh21.easterhegg.eu/hackertours)
## 2023
* [37C3 Hackertours](https://hackertours.hamburg.ccc.de/en/37c3/)
* [Easterhegg 2023 Hackertours](https://eh20.easterhegg.eu/hackertours.html)
Follow us at <a rel="me" href="https://chaos.social/@hackertours">@hackertours@chaos.social!</a>
Follow us at [@hackertours@chaos.social](https://chaos.social/@hackertours)!
# News

11
i18n/de.toml Normal file
View file

@ -0,0 +1,11 @@
[event_logo_credits]
other = "Credits der Veranstaltungslogos"
[event_logo_designer_unlisted]
other = "Design im Archiv nicht angegeben"
[event_logo_modified]
other = "Hintergrund entfernt und Grafik weiß eingefärbt"
[event_logo_source]
other = "Original"

11
i18n/en.toml Normal file
View file

@ -0,0 +1,11 @@
[event_logo_credits]
other = "Event logo credits"
[event_logo_designer_unlisted]
other = "Designer not listed in the archive"
[event_logo_modified]
other = "background removed and artwork recolored white"
[event_logo_source]
other = "Original"

View file

@ -0,0 +1,18 @@
{{ if $.Param "feedlinks" }}{{ partial "feedlinks.html" . }}{{ end -}}
<p>{{ with site.Copyright }}{{ . | site.Home.RenderString }}{{ else }}<span>© {{ site.Title }}</span>{{ end }}</p>
{{ if .IsHome }}
<div class="event-logo-credits">
<p>{{ i18n "event_logo_credits" }} (<a href="https://designs.events.ccc.de/">CCC Design Archive</a>):</p>
<ul>
<li>40C3: {{ i18n "event_logo_designer_unlisted" }} (<a href="https://events.ccc.de/congress/2026/infos/assets/favicon.svg">{{ i18n "event_logo_source" }}</a>).</li>
<li>EH23: <a href="https://veith-yaeger.de/whos-veith-yaeger/">Stella Schiffczyk</a>; {{ i18n "event_logo_modified" }}.</li>
<li>39C3: <a href="http://ninabender.com">Nina Bender</a> &amp; <a href="https://www.berndvolmer.com">Bernd Volmer</a>.</li>
<li>EH22: <a href="https://kzl.sh/">kritzl</a>, <a href="https://lyx.sh/">traumweh</a> &amp; <a href="https://chaos.social/@schrottkatze">Schrottkatze</a>,
<a href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0</a> (<a href="https://git.hamburg.ccc.de/EH22/design-public">{{ i18n "event_logo_source" }}</a>).</li>
<li>38C3 / 37C3: <a href="https://www.robokid.tv">Robokid</a> &amp; <a href="https://github.com/eulervoid">Eulervoid</a>.</li>
<li>EH21 / EH20: {{ i18n "event_logo_designer_unlisted" }}.</li>
</ul>
</div>
{{ end }}
{{ with $.Param "footer" }}<p>{{ . | site.Home.RenderString }}</p>{{ end }}
{{ if $.Param "poweredby" }}<p>Powered by <a href="https://gohugo.io/">Hugo</a> and the <a href="https://github.com/frjo/hugo-theme-zen">Zen theme</a>.</p>{{ end }}

View file

@ -0,0 +1,29 @@
<section class="event-list" aria-labelledby="event-list-title">
<h1 id="event-list-title">{{ .Page.Params.eventsTitle }}</h1>
<div class="event-cards">
{{ range .Page.Params.events }}
<article class="event-card{{ with .status }} event-card--upcoming{{ end }}">
<header class="event-card__header">
<h2>{{ .code }}</h2>
{{ $logo := resources.GetMatch (printf "img/events/%s.*" (lower .code)) }}
{{ $original := .logoOriginal }}
{{ with $logo }}
{{ if $original }}
<img class="event-card__image" src="{{ .RelPermalink }}" alt="">
{{ else }}
<span class="event-card__logo" style="--event-logo: url('{{ .RelPermalink }}')" aria-hidden="true"></span>
{{ end }}
{{ else }}
{{ errorf "Missing event logo for %s" .code }}
{{ end }}
</header>
<div class="event-card__body">
<h3>{{ if .status }}{{ .title }}{{ else }}<a href="{{ .url }}">{{ .title }}</a>{{ end }}</h3>
<p>{{ .event }}</p>
<p class="event-card__date">{{ .date }}, {{ .location }}</p>
{{ with .status }}<p class="event-card__status">{{ . }}</p>{{ end }}
</div>
</article>
{{ end }}
</div>
</section>