|
1 | 1 | <script> |
2 | 2 | import Icon from "$components/Icon.svelte"; |
3 | 3 | import Head from "$components/Head.svelte"; |
4 | | - import projects from "./projects.json"; |
| 4 | + import data from "./data-for-home.json"; |
5 | 5 | import { fade } from "svelte/transition"; |
6 | 6 | import { onMount } from "svelte"; |
7 | 7 |
|
|
25 | 25 | clearInterval(interval); |
26 | 26 | }; |
27 | 27 | }); |
| 28 | +
|
| 29 | + const gridMenu = [ |
| 30 | + ["Bahasa Pemograman", "languages"], |
| 31 | + ["Alat-alat", "tools"], |
| 32 | + ]; |
28 | 33 | </script> |
29 | 34 |
|
30 | 35 | <Head {config} /> |
31 | 36 |
|
32 | | -<div class="flex flex-col md:flex-row"> |
33 | | - <div class="mx-auto flex w-fit flex-col p-4"> |
34 | | - <img |
35 | | - class="m-auto max-h-fit max-w-30 rounded border-4 border-neutral-600 md:max-w-60" |
36 | | - src="/favicon.png" |
37 | | - alt="Profile" /> |
38 | | - <div class="mx-4 grow text-center"> |
39 | | - <h2 class="text-3xl font-semibold">Hyper-Z11</h2> |
40 | | - <p class="text-gray-500"> |
41 | | - Seorang |
42 | | - {#key whatIndex} |
43 | | - <span in:fade={{ duration: 300, delay: 300 }} out:fade={{ duration: 300 }}> |
44 | | - {what[whatIndex]} |
45 | | - </span> |
46 | | - {/key} |
47 | | - </p> |
| 37 | +<div> |
| 38 | + <div class="flex flex-col md:flex-row"> |
| 39 | + <div class="mx-auto flex w-fit flex-col p-4"> |
| 40 | + <img |
| 41 | + class="m-auto max-h-fit max-w-30 rounded border-4 border-neutral-600 md:max-w-60" |
| 42 | + src="/favicon.png" |
| 43 | + alt="Profile" /> |
| 44 | + <div class="mx-4 grow text-center"> |
| 45 | + <h2 class="text-3xl font-semibold">Hyper-Z11</h2> |
| 46 | + <p class="text-gray-500"> |
| 47 | + Seorang |
| 48 | + {#key whatIndex} |
| 49 | + <span in:fade={{ duration: 300, delay: 300 }} out:fade={{ duration: 300 }}> |
| 50 | + {what[whatIndex]} |
| 51 | + </span> |
| 52 | + {/key} |
| 53 | + </p> |
| 54 | + </div> |
48 | 55 | </div> |
49 | | - </div> |
50 | | - <div class="grow"> |
51 | | - <section id="about"> |
52 | | - <h2>Tentang</h2> |
53 | | - <p class="**:inline"> |
54 | | - Halo, saya <b>Hyper-Z11</b>. Seorang programmer pemula. Nama asli saya adalah |
55 | | - <b>Firjatullah Zeroun</b>. Saya dari |
56 | | - <a href="https://id.wikipedia.org/wiki/Indonesia"><b><Icon icon="pin-map" class="mx-1" />Indonesia</b></a>. Saya suka |
57 | | - koding sebagai hobi saya dan berkontribusi ke proyek sumber terbuka jika saya mau. Anda mungkin tidak akan menemukan |
58 | | - banyak hal disini. Jadi terima kasih sudah berkunjung. Dan jika anda mau, mungkin anda bisa mengunjungi |
59 | | - <a href="/blogs">kumpulan blog saya</a>. |
60 | | - </p> |
61 | | - </section> |
| 56 | + <div class="grow"> |
| 57 | + <section id="about"> |
| 58 | + <h2>Tentang</h2> |
| 59 | + <p class="**:inline"> |
| 60 | + Halo, saya <b>Hyper-Z11</b>. Seorang programmer pemula. Nama asli saya adalah |
| 61 | + <b>Firjatullah Zeroun</b>. Saya dari |
| 62 | + <a href="https://id.wikipedia.org/wiki/Indonesia"><b><Icon icon="pin-map" class="mx-1" />Indonesia</b></a>. Saya |
| 63 | + suka koding sebagai hobi saya dan berkontribusi ke proyek sumber terbuka jika saya mau. Anda mungkin tidak akan |
| 64 | + menemukan banyak hal disini. Jadi terima kasih sudah berkunjung. Dan jika anda mau, mungkin anda bisa mengunjungi |
| 65 | + <a href="/blogs">kumpulan blog saya</a>. |
| 66 | + </p> |
| 67 | + </section> |
62 | 68 |
|
63 | | - <section id="projects"> |
64 | | - <h2>Proyek</h2> |
65 | | - <p>Saya telah bekerja dan berkontribusi ke beberapa proyek di bawah ini:</p> |
66 | | - <ul class="list-disc"> |
67 | | - {#each projects as { name, description, url } (url)} |
68 | | - <li class="mx-5"><a href={url}>{name} - {description}</a></li> |
69 | | - {/each} |
70 | | - </ul> |
71 | | - </section> |
| 69 | + <section id="projects"> |
| 70 | + <h2>Proyek</h2> |
| 71 | + <p>Saya telah bekerja dan berkontribusi ke beberapa proyek di bawah ini:</p> |
| 72 | + <ul class="list-disc"> |
| 73 | + {#each data.projects as { name, description, url } (url)} |
| 74 | + <li class="mx-5"><a href={url}>{name} - {description}</a></li> |
| 75 | + {/each} |
| 76 | + </ul> |
| 77 | + </section> |
| 78 | + </div> |
| 79 | + </div> |
| 80 | + <div> |
| 81 | + {#each gridMenu as menu} |
| 82 | + <section> |
| 83 | + <h2>{menu[0]}</h2> |
| 84 | + <div class="grid gap-2 min-[375px]:grid-cols-2 sm:grid-cols-3 md:grid-cols-4"> |
| 85 | + {#each data[menu[1]] as { name, icon, color } (name)} |
| 86 | + <div class="group flex cursor-pointer gap-2 rounded-xl border-2 border-neutral-300 p-4 hover:scale-90"> |
| 87 | + <Icon {icon} style="color: {color}" /> |
| 88 | + <span class="">{name}</span> |
| 89 | + </div> |
| 90 | + {/each} |
| 91 | + </div> |
| 92 | + </section> |
| 93 | + {/each} |
72 | 94 | </div> |
73 | 95 | </div> |
74 | 96 |
|
|
80 | 102 | } |
81 | 103 |
|
82 | 104 | section > h2 { |
83 | | - @apply text-3xl font-black; |
| 105 | + @apply mb-2 text-3xl font-black; |
84 | 106 | } |
85 | 107 |
|
86 | 108 | a { |
|
0 commit comments