feat: finish Projects overview

This commit is contained in:
Stefan Imhoff
2023-05-16 20:19:09 +02:00
parent dc9bf2b618
commit bdb6f46e02
124 changed files with 509 additions and 34 deletions

View File

@@ -4,11 +4,7 @@
"node": true,
"browser": true
},
"extends": [
"eslint:recommended",
"plugin:prettier/recommended",
"plugin:astro/recommended",
],
"extends": ["eslint:recommended", "plugin:prettier/recommended", "plugin:astro/recommended"],
"plugins": ["prettier", "astro"],
"parser": "@typescript-eslint/parser",
"parserOptions": {

Binary file not shown.

After

Width:  |  Height:  |  Size: 416 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 329 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 770 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 854 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 503 KiB

View File

@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 1600 1380" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
<g transform="matrix(1,0,0,1,0,-1621.8)">
<g id="secuela-variable-italic" transform="matrix(1.17561,0,0,0.672187,-2006.76,1621.8)">
<rect x="1707" y="0" width="1361" height="2053" style="fill:none;"/>
<g transform="matrix(0.850625,0,0,1.48768,1733.42,1305.86)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-ExtraLightItalic', 'Secuela';font-weight:200;font-style:italic;font-size:200px;">Sec<tspan x="441.828px " y="390.415px ">u</tspan>ela V<tspan x="851.228px " y="390.415px ">a</tspan>riable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1719.4,1055.93)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-LightItalic', 'Secuela';font-weight:300;font-style:italic;font-size:200px;">Sec<tspan x="448.028px " y="390.415px ">u</tspan>el<tspan x="657.228px " y="390.415px ">a</tspan> V<tspan x="868.028px 955.028px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1690.88,806.003)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-MediumItalic', 'Secuela';font-weight:500;font-style:italic;font-size:200px;">Sec<tspan x="460.228px 550.428px 636.228px 683.028px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="902.028px 994.628px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1676.98,555.775)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-SemiBoldItalic', 'Secuela';font-weight:600;font-style:italic;font-size:200px;">Sec<tspan x="466.628px 559.428px 647.628px 696.028px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="919.028px 1014.23px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1662.71,302.275)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-BoldItalic', 'Secuela';font-weight:700;font-style:italic;font-size:200px;">Sec<tspan x="472.828px 568.228px 658.628px 708.828px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="936.028px 1034.03px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1648.72,45.5008)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-ExtraBoldItalic', 'Secuela';font-weight:800;font-style:italic;font-size:200px;">Sec<tspan x="478.828px 577.028px 669.628px 721.628px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="952.828px 1053.63px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1634.45,-214.843)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-BlackItalic', 'Secuela';font-weight:900;font-style:italic;font-size:200px;">Sec<tspan x="485.028px 585.828px 680.628px 734.428px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="969.828px 1073.43px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 1600 1550" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
<g id="secuela-variable-regular" transform="matrix(1,0,0,1.72222,0,0)">
<rect x="0" y="0" width="1600" height="900" style="fill:none;"/>
<g transform="matrix(1,0,0,0.580645,-27.028,314.585)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Medium', 'Secuela';font-weight:500;font-size:200px;">Sec<tspan x="471.028px 565.028px 654.428px 703.228px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="926.428px " y="390.415px ">a</tspan>ri<tspan x="1128.43px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,-45.028,216.92)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-SemiBold', 'Secuela';font-weight:600;font-size:200px;">Sec<tspan x="477.628px 574.228px 666.028px 716.628px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="944.628px " y="390.415px ">a</tspan>ri<tspan x="1154.03px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,-62.828,117.978)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Bold', 'Secuela';font-weight:700;font-size:200px;">Sec<tspan x="484.228px 583.628px 677.828px 730.428px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="963.228px " y="390.415px ">a</tspan>ri<tspan x="1179.83px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,-80.328,17.7591)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-ExtraBold', 'Secuela';font-weight:800;font-size:200px;">Sec<tspan x="490.428px 592.628px 689.028px 743.228px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="980.828px " y="390.415px ">a</tspan>ri<tspan x="1205.03px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,-98.328,-83.8538)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Black', 'Secuela';font-weight:900;font-size:200px;">Sec<tspan x="497.028px 602.028px 700.828px 757.028px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="999.428px " y="390.415px ">a</tspan>ri<tspan x="1230.83px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,8.67199,509.682)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Light', 'Secuela';font-weight:300;font-size:200px;">Sec<tspan x="458.228px " y="390.415px ">u</tspan>el<tspan x="676.428px " y="390.415px ">a</tspan> V<tspan x="890.028px " y="390.415px ">a</tspan>riable</text>
</g>
<g transform="matrix(1,0,0,0.580645,-9.02801,412.133)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Regular', 'Secuela';font-size:200px;">Sec<tspan x="464.428px 555.628px 642.628px 689.428px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="907.828px " y="390.415px ">a</tspan>ri<tspan x="1102.63px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1.01622,0,0,0.590061,22.9667,603.554)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-ExtraLight', 'Secuela';font-weight:200;font-size:196.809px;">Sec<tspan x="447.674px " y="390.415px ">u</tspan>ela V<tspan x="860.972px " y="390.415px ">a</tspan>riable</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 386 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 379 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 739 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 193 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

View File

@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 1600 1380" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
<g transform="matrix(1,0,0,1,0,-1621.8)">
<g id="secuela-variable-italic" transform="matrix(1.17561,0,0,0.672187,-2006.76,1621.8)">
<rect x="1707" y="0" width="1361" height="2053" style="fill:none;"/>
<g transform="matrix(0.850625,0,0,1.48768,1733.42,1305.86)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-ExtraLightItalic', 'Secuela';font-weight:200;font-style:italic;font-size:200px;">Sec<tspan x="441.828px " y="390.415px ">u</tspan>ela V<tspan x="851.228px " y="390.415px ">a</tspan>riable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1719.4,1055.93)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-LightItalic', 'Secuela';font-weight:300;font-style:italic;font-size:200px;">Sec<tspan x="448.028px " y="390.415px ">u</tspan>el<tspan x="657.228px " y="390.415px ">a</tspan> V<tspan x="868.028px 955.028px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1690.88,806.003)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-MediumItalic', 'Secuela';font-weight:500;font-style:italic;font-size:200px;">Sec<tspan x="460.228px 550.428px 636.228px 683.028px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="902.028px 994.628px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1676.98,555.775)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-SemiBoldItalic', 'Secuela';font-weight:600;font-style:italic;font-size:200px;">Sec<tspan x="466.628px 559.428px 647.628px 696.028px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="919.028px 1014.23px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1662.71,302.275)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-BoldItalic', 'Secuela';font-weight:700;font-style:italic;font-size:200px;">Sec<tspan x="472.828px 568.228px 658.628px 708.828px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="936.028px 1034.03px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1648.72,45.5008)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-ExtraBoldItalic', 'Secuela';font-weight:800;font-style:italic;font-size:200px;">Sec<tspan x="478.828px 577.028px 669.628px 721.628px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="952.828px 1053.63px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1634.45,-214.843)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-BlackItalic', 'Secuela';font-weight:900;font-style:italic;font-size:200px;">Sec<tspan x="485.028px 585.828px 680.628px 734.428px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="969.828px 1073.43px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 1600 1550" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
<g id="secuela-variable-regular" transform="matrix(1,0,0,1.72222,0,0)">
<rect x="0" y="0" width="1600" height="900" style="fill:none;"/>
<g transform="matrix(1,0,0,0.580645,-27.028,314.585)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Medium', 'Secuela';font-weight:500;font-size:200px;">Sec<tspan x="471.028px 565.028px 654.428px 703.228px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="926.428px " y="390.415px ">a</tspan>ri<tspan x="1128.43px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,-45.028,216.92)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-SemiBold', 'Secuela';font-weight:600;font-size:200px;">Sec<tspan x="477.628px 574.228px 666.028px 716.628px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="944.628px " y="390.415px ">a</tspan>ri<tspan x="1154.03px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,-62.828,117.978)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Bold', 'Secuela';font-weight:700;font-size:200px;">Sec<tspan x="484.228px 583.628px 677.828px 730.428px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="963.228px " y="390.415px ">a</tspan>ri<tspan x="1179.83px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,-80.328,17.7591)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-ExtraBold', 'Secuela';font-weight:800;font-size:200px;">Sec<tspan x="490.428px 592.628px 689.028px 743.228px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="980.828px " y="390.415px ">a</tspan>ri<tspan x="1205.03px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,-98.328,-83.8538)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Black', 'Secuela';font-weight:900;font-size:200px;">Sec<tspan x="497.028px 602.028px 700.828px 757.028px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="999.428px " y="390.415px ">a</tspan>ri<tspan x="1230.83px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,8.67199,509.682)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Light', 'Secuela';font-weight:300;font-size:200px;">Sec<tspan x="458.228px " y="390.415px ">u</tspan>el<tspan x="676.428px " y="390.415px ">a</tspan> V<tspan x="890.028px " y="390.415px ">a</tspan>riable</text>
</g>
<g transform="matrix(1,0,0,0.580645,-9.02801,412.133)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Regular', 'Secuela';font-size:200px;">Sec<tspan x="464.428px 555.628px 642.628px 689.428px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="907.828px " y="390.415px ">a</tspan>ri<tspan x="1102.63px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1.01622,0,0,0.590061,22.9667,603.554)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-ExtraLight', 'Secuela';font-weight:200;font-size:196.809px;">Sec<tspan x="447.674px " y="390.415px ">u</tspan>ela V<tspan x="860.972px " y="390.415px ">a</tspan>riable</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 185 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 481 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 438 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 637 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 252 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 24 KiB

View File

@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 1600 1380" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
<g transform="matrix(1,0,0,1,0,-1621.8)">
<g id="secuela-variable-italic" transform="matrix(1.17561,0,0,0.672187,-2006.76,1621.8)">
<rect x="1707" y="0" width="1361" height="2053" style="fill:none;"/>
<g transform="matrix(0.850625,0,0,1.48768,1733.42,1305.86)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-ExtraLightItalic', 'Secuela';font-weight:200;font-style:italic;font-size:200px;">Sec<tspan x="441.828px " y="390.415px ">u</tspan>ela V<tspan x="851.228px " y="390.415px ">a</tspan>riable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1719.4,1055.93)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-LightItalic', 'Secuela';font-weight:300;font-style:italic;font-size:200px;">Sec<tspan x="448.028px " y="390.415px ">u</tspan>el<tspan x="657.228px " y="390.415px ">a</tspan> V<tspan x="868.028px 955.028px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1690.88,806.003)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-MediumItalic', 'Secuela';font-weight:500;font-style:italic;font-size:200px;">Sec<tspan x="460.228px 550.428px 636.228px 683.028px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="902.028px 994.628px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1676.98,555.775)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-SemiBoldItalic', 'Secuela';font-weight:600;font-style:italic;font-size:200px;">Sec<tspan x="466.628px 559.428px 647.628px 696.028px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="919.028px 1014.23px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1662.71,302.275)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-BoldItalic', 'Secuela';font-weight:700;font-style:italic;font-size:200px;">Sec<tspan x="472.828px 568.228px 658.628px 708.828px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="936.028px 1034.03px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1648.72,45.5008)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-ExtraBoldItalic', 'Secuela';font-weight:800;font-style:italic;font-size:200px;">Sec<tspan x="478.828px 577.028px 669.628px 721.628px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="952.828px 1053.63px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
<g transform="matrix(0.850625,0,0,1.48768,1634.45,-214.843)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-BlackItalic', 'Secuela';font-weight:900;font-style:italic;font-size:200px;">Sec<tspan x="485.028px 585.828px 680.628px 734.428px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="969.828px 1073.43px " y="390.415px 390.415px ">ar</tspan>iable</text>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 1600 1550" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
<g id="secuela-variable-regular" transform="matrix(1,0,0,1.72222,0,0)">
<rect x="0" y="0" width="1600" height="900" style="fill:none;"/>
<g transform="matrix(1,0,0,0.580645,-27.028,314.585)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Medium', 'Secuela';font-weight:500;font-size:200px;">Sec<tspan x="471.028px 565.028px 654.428px 703.228px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="926.428px " y="390.415px ">a</tspan>ri<tspan x="1128.43px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,-45.028,216.92)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-SemiBold', 'Secuela';font-weight:600;font-size:200px;">Sec<tspan x="477.628px 574.228px 666.028px 716.628px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="944.628px " y="390.415px ">a</tspan>ri<tspan x="1154.03px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,-62.828,117.978)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Bold', 'Secuela';font-weight:700;font-size:200px;">Sec<tspan x="484.228px 583.628px 677.828px 730.428px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="963.228px " y="390.415px ">a</tspan>ri<tspan x="1179.83px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,-80.328,17.7591)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-ExtraBold', 'Secuela';font-weight:800;font-size:200px;">Sec<tspan x="490.428px 592.628px 689.028px 743.228px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="980.828px " y="390.415px ">a</tspan>ri<tspan x="1205.03px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,-98.328,-83.8538)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Black', 'Secuela';font-weight:900;font-size:200px;">Sec<tspan x="497.028px 602.028px 700.828px 757.028px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="999.428px " y="390.415px ">a</tspan>ri<tspan x="1230.83px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1,0,0,0.580645,8.67199,509.682)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Light', 'Secuela';font-weight:300;font-size:200px;">Sec<tspan x="458.228px " y="390.415px ">u</tspan>el<tspan x="676.428px " y="390.415px ">a</tspan> V<tspan x="890.028px " y="390.415px ">a</tspan>riable</text>
</g>
<g transform="matrix(1,0,0,0.580645,-9.02801,412.133)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-Regular', 'Secuela';font-size:200px;">Sec<tspan x="464.428px 555.628px 642.628px 689.428px " y="390.415px 390.415px 390.415px 390.415px ">uela</tspan> V<tspan x="907.828px " y="390.415px ">a</tspan>ri<tspan x="1102.63px " y="390.415px ">a</tspan>ble</text>
</g>
<g transform="matrix(1.01622,0,0,0.590061,22.9667,603.554)">
<text x="203.828px" y="390.415px" style="font-family:'Secuela-ExtraLight', 'Secuela';font-weight:200;font-size:196.809px;">Sec<tspan x="447.674px " y="390.415px ">u</tspan>ela V<tspan x="860.972px " y="390.415px ">a</tspan>riable</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 265 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 235 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 251 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 411 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 359 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 9.3 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 172 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 133 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 KiB

View File

@@ -0,0 +1 @@
<svg clip-rule="evenodd" fill-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2" viewBox="0 0 1280 800" xmlns="http://www.w3.org/2000/svg"><g stroke-width=".969"><circle cx="144.131" cy="400" fill="#080808" r="100"/><circle cx="392.066" cy="400" fill="#787d7b" r="100"/><circle cx="640" cy="400" fill="#d9cd90" r="100"/><circle cx="887.935" cy="400" fill="#985f2a" r="100"/><circle cx="1135.869" cy="400" fill="#f0a986" r="100"/></g></svg>

After

Width:  |  Height:  |  Size: 449 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 379 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 355 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

View File

@@ -12,12 +12,10 @@ export interface Props {
}
const { backLink, class: className, navigation = true } = Astro.props;
const classes = cx('grid w-full grid-cols-18 grid-rows-layout mbe-layout print:hidden', className);
---
<header
class={cx('grid w-full grid-cols-18 grid-rows-layout mbe-layout print:hidden', className)}
role="banner"
>
<header class={classes} role="banner">
<Backlink backLink={backLink} />
{navigation && <MainNavigation />}
<ThemeToggle />

View File

@@ -0,0 +1,122 @@
---
import cx from 'classnames';
import type { CollectionEntry } from 'astro:content';
import { ProjectContent, ProjectImage } from '../components';
interface Props {
project: CollectionEntry<'projects'>;
}
const {
project: {
data: { format, class: className },
},
project,
} = Astro.props;
const classes = cx('col-start-1 col-end-19 grid grid-cols-18', className);
---
<article class={classes}>
{
format === '50-start' && (
<figure class="col-start-2 col-end-18 m-0 grid grid-cols-2 items-center gap-x-gap gap-y-halfgap">
<div class="image-shadow col-start-1 col-end-3 row-start-1 md:col-start-1 md:col-end-2 md:row-start-1">
<ProjectImage project={project} />
</div>
<figcaption class="col-start-1 col-end-3 row-start-2 text-start md:col-start-2 md:row-start-1">
<ProjectContent project={project} />
</figcaption>
</figure>
)
}
{
format === '50-end' && (
<figure class="col-start-2 col-end-18 m-0 grid grid-cols-2 items-center gap-x-gap gap-y-halfgap">
<div class="image-shadow col-start-1 col-end-3 row-start-1 md:col-start-2 md:row-start-1">
<ProjectImage project={project} />
</div>
<figcaption class="col-start-1 col-end-3 row-start-2 text-start md:col-start-1 md:col-end-2 md:row-start-1">
<ProjectContent project={project} />
</figcaption>
</figure>
)
}
{
format === '70-start' && (
<figure class="col-start-1 col-end-19 row-start-1 grid grid-cols-18 gap-x-gap gap-y-halfgap">
<div class="image-shadow col-start-1 col-end-19 grid self-start xl:col-end-13">
<ProjectImage project={project} />
</div>
<figcaption class="col-start-2 col-end-18 xl:col-start-13">
<ProjectContent project={project} />
</figcaption>
</figure>
)
}
{
format === '70-end' && (
<figure class="col-start-1 col-end-19 row-start-1 grid grid-cols-18 gap-x-gap gap-y-halfgap">
<div class="image-shadow col-start-1 col-end-19 row-start-1 grid self-start xl:col-start-7 xl:col-end-19">
<ProjectImage project={project} />
</div>
<figcaption class="col-start-2 col-end-18 xl:col-start-2 xl:col-end-7">
<ProjectContent project={project} />
</figcaption>
</figure>
)
}
{
format === '100-start' && (
<figure class="col-start-1 col-end-19 row-start-1 grid grid-cols-18 gap-x-gap gap-y-halfgap">
<div class="image-shadow col-start-1 col-end-19 row-start-1">
<ProjectImage project={project} />
</div>
<figcaption class="col-start-2 col-end-18 md:col-end-13 xl:col-end-10">
<ProjectContent project={project} />
</figcaption>
</figure>
)
}
{
format === '100-end' && (
<figure class="col-start-1 col-end-19 row-start-1 grid grid-cols-18 gap-x-gap gap-y-halfgap">
<div class="image-shadow col-start-1 col-end-19 row-start-1">
<ProjectImage project={project} />
</div>
<figcaption class="col-start-2 col-end-18 md:col-start-8 md:col-end-18 xl:col-start-10 xl:col-end-18">
<ProjectContent project={project} />
</figcaption>
</figure>
)
}
</article>
<style is:global>
/* Extra spacing and background for the Bamboo */
.bamboo-illustration {
& img {
@apply bg-black/5 pbe-10 pie-gap dark:bg-white/5;
}
}
.traditional-colors-of-japan {
& img {
@apply bg-transparent duration-500 ease-in-out;
transition-property: filter;
}
& .image-shadow:focus,
& .image-shadow:hover {
& img {
@apply drop-shadow-subtle;
}
&::after {
display: none;
}
}
}
</style>

View File

@@ -0,0 +1,24 @@
---
import type { CollectionEntry } from 'astro:content';
import { Headline, MoreLink, Text } from '../components';
interface Props {
project: CollectionEntry<'projects'>;
}
const { project } = Astro.props;
---
<small
class="project-categories dark:text-white/0.2 text-black/0.8 block text-3 leading-4 small-caps md:p-0"
>
{project.data.categories.join(' / ')}
</small>
<Headline class="!mbs-1">{project.data.title}</Headline>
<Text>{project.data.description}</Text>
{
project.data.more && (
<MoreLink href={project.data.more.link} text={project.data.more.text || 'See more'} />
)
}

View File

@@ -0,0 +1,25 @@
---
import { Picture } from '@astrojs/image/components';
import type { CollectionEntry } from 'astro:content';
interface Props {
project: CollectionEntry<'projects'>;
}
const { project } = Astro.props;
---
{
project.data.image &&
(project.data.image.src.includes('.svg') ? (
<img alt={project.data.title} src={project.data.image.src} />
) : (
<Picture
alt={project.data.title}
aspectRatio={project.data.image.aspectRatio as number | `${number}:${number}`}
formats={['webp', 'avif']}
widths={[300, 500, 700, 1000, 1200, 1500]}
src={project.data.image.src}
/>
))
}

View File

@@ -3,6 +3,9 @@ import DownloadLink from './DownloadLink.astro';
import EmailLink from './EmailLink.astro';
import MoreLink from './MoreLink.astro';
import Pagination from './Pagination.astro';
import ProjectContainer from './ProjectContainer.astro';
import ProjectContent from './ProjectContent.astro';
import ProjectImage from './ProjectImage.astro';
import Toolbox from './Toolbox.astro';
export * from './AffiliateLink';
@@ -29,4 +32,13 @@ export * from './Title';
export * from './UnorderedList';
export * from './Verse';
export * from './YouTubeVideo';
export { DownloadLink, EmailLink, MoreLink, Pagination, Toolbox };
export {
DownloadLink,
EmailLink,
MoreLink,
Pagination,
ProjectContainer,
ProjectContent,
ProjectImage,
Toolbox,
};

View File

@@ -11,6 +11,23 @@ const haikuCollection = defineCollection({
const projectCollection = defineCollection({
schema: z.object({
title: z.string(),
format: z.enum([
"100-end",
"100-start",
"50-end",
"50-start",
"70-end",
"70-start"
]),
image: z.object({
src: z.string(),
height: z.number().optional(),
width: z.number().optional(),
aspectRatio: z.union([
z.number(),
z.string().regex(/^\d+:\d+$/),
]),
}).optional(),
sort: z.number().optional(),
showcase: z.boolean().optional(),
description: z.string(),
@@ -30,7 +47,8 @@ const projectCollection = defineCollection({
more: z.object({
text: z.string().optional(),
link: z.string()
}).optional()
}).optional(),
class: z.string().optional(),
}),
});

Some files were not shown because too many files have changed in this diff Show More