feat(hackathon): winner certificate (#73)

* update hackathon landing page

* feat(hackathon): draft winner certificate

* feat(hackathon): refine winner certificate
This commit is contained in:
Hafid Nur authored and GitHub committed 2025-12-16 12:33:23 +07:00
1 parent 38ee9a9549
commit fe172cc128
6 files changed
+1040 -18

No files matched your search

@@ -0,0 +1,132 @@
<svg width="842" height="595" viewBox="0 0 842 595" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g clip-path="url(#clip0_2006_114)">
<rect width="595" height="842" transform="translate(842 6.10352e-05) rotate(90)" fill="white"/>
<line x1="842.5" y1="3.00006" x2="-10.4999" y2="3.00006" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="28.0001" x2="-10.4999" y2="28.0001" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="53.0001" x2="-10.4999" y2="53.0001" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="78.0001" x2="-10.4999" y2="78.0001" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="103" x2="-10.4999" y2="103" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="128" x2="-10.4999" y2="128" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="153" x2="-10.4999" y2="153" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="178" x2="-10.4999" y2="178" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="203" x2="-10.4999" y2="203" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="228" x2="-10.4999" y2="228" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="253" x2="-10.4999" y2="253" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="278" x2="-10.4999" y2="278" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="303" x2="-10.4999" y2="303" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="328" x2="-10.4999" y2="328" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="353" x2="-10.4999" y2="353" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="378" x2="-10.4999" y2="378" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="403" x2="-10.4999" y2="403" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="428" x2="-10.4999" y2="428" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="453" x2="-10.4999" y2="453" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="478" x2="-10.4999" y2="478" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="503" x2="-10.4999" y2="503" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="528" x2="-10.4999" y2="528" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="553" x2="-10.4999" y2="553" stroke="#F4FBFF" stroke-width="2"/>
<line x1="842.5" y1="578" x2="-10.4999" y2="578" stroke="#F4FBFF" stroke-width="2"/>
<line x1="0.500026" y1="-0.499939" x2="0.500052" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="24.5" y1="-0.499939" x2="24.5001" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="48.5" y1="-0.499939" x2="48.5001" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="72.5001" y1="-0.499939" x2="72.5002" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="96.5001" y1="-0.499939" x2="96.5002" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="120.5" y1="-0.499939" x2="120.5" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="144.5" y1="-0.499939" x2="144.5" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="168.5" y1="-0.499939" x2="168.5" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="192.5" y1="-0.499939" x2="192.5" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="216.5" y1="-0.499939" x2="216.5" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="240.5" y1="-0.499939" x2="240.5" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="264.5" y1="-0.499939" x2="264.5" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="288.5" y1="-0.499939" x2="288.5" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="312.5" y1="-0.499939" x2="312.5" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="336.5" y1="-0.499939" x2="336.5" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="360.501" y1="-0.499939" x2="360.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="384.501" y1="-0.499939" x2="384.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="408.501" y1="-0.499939" x2="408.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="432.501" y1="-0.499939" x2="432.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="456.501" y1="-0.499939" x2="456.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="480.501" y1="-0.499939" x2="480.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="504.501" y1="-0.499939" x2="504.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="528.501" y1="-0.499939" x2="528.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="552.501" y1="-0.499939" x2="552.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="576.501" y1="-0.499939" x2="576.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="600.501" y1="-0.499939" x2="600.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="624.501" y1="-0.499939" x2="624.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="648.501" y1="-0.499939" x2="648.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="672.501" y1="-0.499939" x2="672.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="696.501" y1="-0.499939" x2="696.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="720.501" y1="-0.499939" x2="720.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="744.501" y1="-0.499939" x2="744.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="768.501" y1="-0.499939" x2="768.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="792.501" y1="-0.499939" x2="792.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="816.501" y1="-0.499939" x2="816.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<line x1="840.501" y1="-0.499939" x2="840.501" y2="595.501" stroke="#F4FBFF" stroke-width="2"/>
<g opacity="0.4" filter="url(#filter0_f_2006_114)">
<circle cx="12.5" cy="691.5" r="159" fill="#26A5EE"/>
</g>
<g filter="url(#filter1_f_2006_114)">
<circle cx="744" cy="607" r="159" fill="#26A5EE"/>
</g>
<g filter="url(#filter2_f_2006_114)">
<circle cx="80.5" cy="-22.4999" r="159" fill="white"/>
</g>
<rect x="30.5" y="40.5001" width="236" height="53" fill="url(#pattern0_2006_114)"/>
<rect x="275.5" y="127.5" width="37" height="251" rx="13.5" transform="rotate(90 275.5 127.5)" fill="url(#paint0_linear_2006_114)"/>
<rect x="275.5" y="127.5" width="37" height="251" rx="13.5" transform="rotate(90 275.5 127.5)" stroke="#E1ECFC"/>
<path d="M42.2 153.14C41.2267 153.14 40.3467 152.973 39.56 152.64C38.7867 152.307 38.1734 151.827 37.72 151.2C37.2667 150.573 37.0334 149.833 37.02 148.98H40.02C40.06 149.553 40.26 150.007 40.62 150.34C40.9934 150.673 41.5 150.84 42.14 150.84C42.7934 150.84 43.3067 150.687 43.68 150.38C44.0534 150.06 44.24 149.647 44.24 149.14C44.24 148.727 44.1134 148.387 43.86 148.12C43.6067 147.853 43.2867 147.647 42.9 147.5C42.5267 147.34 42.0067 147.167 41.34 146.98C40.4334 146.713 39.6934 146.453 39.12 14Line truncated
<path d="M36.54 195.6C38.02 195.6 39.3134 195.887 40.42 196.46C41.54 197.02 42.4 197.833 43 198.9C43.6134 199.953 43.92 201.187 43.92 202.6C43.92 204.013 43.6134 205.24 43 206.28C42.4 207.32 41.54 208.12 40.42 208.68C39.3134 209.227 38.02 209.5 36.54 209.5H32V195.6H36.54ZM36.54 207.64C38.1667 207.64 39.4134 207.2 40.28 206.32C41.1467 205.44 41.58 204.2 41.58 202.6C41.58 200.987 41.1467 199.727 40.28 198.82C39.4134 197.913 38.1667 197.46 36.54 197.46H34.28V207.64H36.54ZM46.9397 197.02C46.5264 19Line truncated
<path d="M606.364 497.5L603.9 493.148H602.844V497.5H600.604V486.332H604.796C605.66 486.332 606.396 486.487 607.004 486.796C607.612 487.095 608.065 487.505 608.364 488.028C608.673 488.54 608.828 489.116 608.828 489.756C608.828 490.492 608.615 491.159 608.188 491.756C607.761 492.343 607.127 492.748 606.284 492.972L608.956 497.5H606.364ZM602.844 491.468H604.716C605.324 491.468 605.777 491.324 606.076 491.036C606.375 490.737 606.524 490.327 606.524 489.804C606.524 489.292 606.375 488.897 606.076 48Line truncated
<path d="M599.944 511.312C599.944 510.496 600.132 509.764 600.508 509.116C600.892 508.468 601.408 507.964 602.056 507.604C602.712 507.236 603.428 507.052 604.204 507.052C605.092 507.052 605.88 507.272 606.568 507.712C607.264 508.144 607.768 508.76 608.08 509.56H606.436C606.22 509.12 605.92 508.792 605.536 508.576C605.152 508.36 604.708 508.252 604.204 508.252C603.652 508.252 603.16 508.376 602.728 508.624C602.296 508.872 601.956 509.228 601.708 509.692C601.468 510.156 601.348 510.696 601.348 51Line truncated
<path d="M400.452 495.372H396.004L395.268 497.5H392.916L396.932 486.316H399.54L403.556 497.5H401.188L400.452 495.372ZM399.844 493.58L398.228 488.908L396.612 493.58H399.844ZM406.977 485.66V497.5H404.737V485.66H406.977ZM410.006 487.58C409.612 487.58 409.281 487.457 409.014 487.212C408.758 486.956 408.63 486.641 408.63 486.268C408.63 485.895 408.758 485.585 409.014 485.34C409.281 485.084 409.612 484.956 410.006 484.956C410.401 484.956 410.726 485.084 410.982 485.34C411.249 485.585 411.382 485.895 Line truncated
<path d="M392.944 511.312C392.944 510.496 393.132 509.764 393.508 509.116C393.892 508.468 394.408 507.964 395.056 507.604C395.712 507.236 396.428 507.052 397.204 507.052C398.092 507.052 398.88 507.272 399.568 507.712C400.264 508.144 400.768 508.76 401.08 509.56H399.436C399.22 509.12 398.92 508.792 398.536 508.576C398.152 508.36 397.708 508.252 397.204 508.252C396.652 508.252 396.16 508.376 395.728 508.624C395.296 508.872 394.956 509.228 394.708 509.692C394.468 510.156 394.348 510.696 394.348 51Line truncated
<path d="M284.868 486.332V497.5H282.628V492.748H277.844V497.5H275.604V486.332H277.844V490.924H282.628V486.332H284.868ZM286.177 493.036C286.177 492.14 286.353 491.345 286.705 490.652C287.067 489.959 287.553 489.425 288.161 489.052C288.779 488.679 289.467 488.492 290.225 488.492C290.886 488.492 291.462 488.625 291.953 488.892C292.454 489.159 292.854 489.495 293.153 489.9V488.636H295.409V497.5H293.153V496.204C292.865 496.62 292.465 496.967 291.953 497.244C291.451 497.511 290.87 497.644 290.209 497Line truncated
<path d="M280.428 513.796H276.936L276.336 515.5H274.908L277.896 507.148H279.48L282.468 515.5H281.028L280.428 513.796ZM280.044 512.68L278.688 508.804L277.32 512.68H280.044ZM283.071 512.164C283.071 511.5 283.207 510.912 283.479 510.4C283.759 509.888 284.135 509.492 284.607 509.212C285.087 508.924 285.619 508.78 286.203 508.78C286.635 508.78 287.059 508.876 287.475 509.068C287.899 509.252 288.235 509.5 288.483 509.812V506.62H289.863V515.5H288.483V514.504C288.259 514.824 287.947 515.088 287.547 515Line truncated
<path d="M43.78 486.332V497.5H41.54V490.236L38.548 497.5H36.852L33.844 490.236V497.5H31.604V486.332H34.148L37.7 494.636L41.252 486.332H43.78ZM54.0427 488.636V497.5H51.7867V496.38C51.4987 496.764 51.12 497.068 50.6507 497.292C50.192 497.505 49.6907 497.612 49.1467 497.612C48.4533 497.612 47.84 497.468 47.3067 497.18C46.7733 496.881 46.352 496.449 46.0427 495.884C45.744 495.308 45.5947 494.625 45.5947 493.836V488.636H47.8347V493.516C47.8347 494.22 48.0107 494.764 48.3627 495.148C48.7147 495.521 4Line truncated
<path d="M36.428 513.796H32.936L32.336 515.5H30.908L33.896 507.148H35.48L38.468 515.5H37.028L36.428 513.796ZM36.044 512.68L34.688 508.804L33.32 512.68H36.044ZM39.0712 512.164C39.0712 511.5 39.2072 510.912 39.4792 510.4C39.7592 509.888 40.1352 509.492 40.6072 509.212C41.0872 508.924 41.6192 508.78 42.2032 508.78C42.6352 508.78 43.0592 508.876 43.4752 509.068C43.8992 509.252 44.2352 509.5 44.4832 509.812V506.62H45.8632V515.5H44.4832V514.504C44.2592 514.824 43.9472 515.088 43.5472 515.296C43.1552 Line truncated
<path d="M257.216 540.004C258.032 540.004 258.756 540.188 259.388 540.556C260.028 540.916 260.524 541.424 260.876 542.08C261.236 542.728 261.416 543.468 261.416 544.3C261.416 545.132 261.236 545.876 260.876 546.532C260.524 547.18 260.028 547.688 259.388 548.056C258.756 548.416 258.032 548.596 257.216 548.596C256.392 548.596 255.66 548.416 255.02 548.056C254.388 547.688 253.892 547.18 253.532 546.532C253.18 545.876 253.004 545.132 253.004 544.3C253.004 543.468 253.18 542.728 253.532 542.08C253.8Line truncated
<path d="M35.216 540.004C36.032 540.004 36.756 540.188 37.388 540.556C38.028 540.916 38.524 541.424 38.876 542.08C39.236 542.728 39.416 543.468 39.416 544.3C39.416 545.132 39.236 545.876 38.876 546.532C38.524 547.18 38.028 547.688 37.388 548.056C36.756 548.416 36.032 548.596 35.216 548.596C34.392 548.596 33.66 548.416 33.02 548.056C32.388 547.688 31.892 547.18 31.532 546.532C31.18 545.876 31.004 545.132 31.004 544.3C31.004 543.468 31.18 542.728 31.532 542.08C31.892 541.424 32.388 540.916 33.02 Line truncated
<rect x="782" y="176.5" width="200" height="200" rx="14.2857" transform="rotate(90 782 176.5)" fill="white"/>
<rect x="784.232" y="174.268" width="204.464" height="204.464" rx="16.5179" transform="rotate(90 784.232 174.268)" stroke="url(#paint2_linear_2006_114)" stroke-opacity="0.8" stroke-width="4.46429"/>
<rect x="594" y="23" width="198" height="108" fill="url(#pattern1_2006_114)"/>
</g>
<defs>
<filter id="filter0_f_2006_114" x="-486.5" y="192.5" width="998" height="998" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="170" result="effect1_foregroundBlur_2006_114"/>
</filter>
<filter id="filter1_f_2006_114" x="225" y="88" width="1038" height="1038" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="180" result="effect1_foregroundBlur_2006_114"/>
</filter>
<filter id="filter2_f_2006_114" x="-257.655" y="-360.655" width="676.31" height="676.31" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="89.5775" result="effect1_foregroundBlur_2006_114"/>
</filter>
<pattern id="pattern0_2006_114" patternContentUnits="objectBoundingBox" width="1" height="1">
<use xlink:href="#image0_2006_114" transform="matrix(0.000918274 0 0 0.00408892 0 -0.000892285)"/>
</pattern>
<pattern id="pattern1_2006_114" patternContentUnits="objectBoundingBox" width="1" height="1">
<use xlink:href="#image1_2006_114" transform="matrix(0.0014782 0 0 0.00271003 -0.000369549 0)"/>
</pattern>
<linearGradient id="paint0_linear_2006_114" x1="276" y1="253" x2="314" y2="253" gradientUnits="userSpaceOnUse">
<stop stop-color="white"/>
<stop offset="1" stop-color="#F9FDFF"/>
</linearGradient>
<linearGradient id="paint1_linear_2006_114" x1="36" y1="146" x2="264" y2="146" gradientUnits="userSpaceOnUse">
<stop stop-color="#22A8F1"/>
<stop offset="1" stop-color="#5CBFF5"/>
</linearGradient>
<linearGradient id="paint2_linear_2006_114" x1="782" y1="276.5" x2="982" y2="276.5" gradientUnits="userSpaceOnUse">
<stop stop-color="#E3F4FD"/>
<stop offset="1" stop-color="#1FAAEC"/>
</linearGradient>
<clipPath id="clip0_2006_114">
<rect width="595" height="842" fill="white" transform="translate(842 6.10352e-05) rotate(90)"/>
</clipPath>
<image id="image0_2006_114" width="1089" height="245" preserveAspectRatio="none" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABEEAAAD1CAYAAAC/deukAAAACXBIWXMAAAsSAAALEgHS3X78AAAgAElEQVR4nOzdd5OcR3og+OdJ97ry1d4A3fAAAZAcuqEZauVGM9LMGp12T6tYxe5F3AfRp9g/Li4uNkK7e4o7SaHQaGOlGY04ImeGbmhBwhLobqDRvrrs6zPz2T+a5IAYWFpQyl9ERVV115uZr6nqzqeezEQiYgBA8Ol82u2c+4f3+HN7w8/ww+efth66Rfk3P/+iroGP6r7T/b243XH7vHzUjru16ca232sZd9vfW/3+bsfsTvefxr2ej3up58bff9a23et5+Sw+7TF0n5uO4ziO4zjOP3f3+j/03f7fvrn/dKf6AAA4Line truncated
<image id="image1_2006_114" width="677" height="369" preserveAspectRatio="none" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqUAAAFxCAYAAABKn9GWAAAQAElEQVR4Aex9BYBUR7r1qWvtNu7GDDO4u0OAOHF32WTjJMTd3d0VgoXg7u4wwgDj7m7tff+veiDJZrP2v7f7suFe5uu6t7xOVU+dOl9PI0C7NAQ0BDQENAQ0BDQENAQ0BDQE/o8R0Ejp//EEaM1rCGgInAoIaGPUENAQ0BDQEPhHCGik9B8hpKVrCGgIaAhoCGgIaAhoCGgI/NsR+B+T0n97D7UGNAQ0BDQENAQ0BDQENAQ0BP7wCGik9A8/xdoANQQ0BP4ACGhD0BDQENAQ+MMjoJHSP/wUawPUENAQ0BDQENAQ0BDQEPj9I/B/T0p//xhpPdQQ0BDQENAQ0Line truncated
</defs>
</svg>

After

Width:  |  Height:  |  Size: 818 KiB