···11---
22import BaseLayout from "../layouts/BaseLayout.astro";
33+import ExternalLink from "../components/ExternalLink.astro";
44+import LinkList from "../components/LinkList.astro";
35const title = "Homepage";
66+77+const mapToExternalLinks = (items: Record<string, string>) => Object.entries(items)
88+ .map(([name, link]) => ({ name, link, external: true }));
99+1010+const languages = mapToExternalLinks({
1111+ Go: "https://go.dev/",
1212+ Python: "https://www.python.org/",
1313+ Ruby: "https://www.ruby-lang.org/",
1414+ Rust: "https://rust-lang.org/",
1515+ TypeScript: "https://www.typescriptlang.org/",
1616+});
1717+1818+const books = mapToExternalLinks({
1919+ Frankenstein: "https://en.wikipedia.org/wiki/Frankenstein",
2020+ "Water Margin": "https://en.wikipedia.org/wiki/Water_Margin",
2121+});
2222+const animeAndManga = mapToExternalLinks({
2323+ Baki: "https://youtu.be/vazrSoijLmA",
2424+ Drifters: "https://en.wikipedia.org/wiki/Drifters_(manga)",
2525+ "Getter Robo Armageddon": "https://en.wikipedia.org/wiki/Getter_Robo_Armageddon",
2626+});
2727+const games = mapToExternalLinks({
2828+ "Resident Evil": "https://en.wikipedia.org/wiki/Resident_Evil",
2929+ Signalis: "https://en.wikipedia.org/wiki/Signalis",
3030+ Ys: "https://en.wikipedia.org/wiki/Ys_(series)",
3131+});
432---
533634<BaseLayout title={title}>
77- <p>Hello, world!</p>
3535+ <h2>Introduction</h2>
3636+ <p>👋 This is my personal site. I'm a developer, both for work and as a hobby, and I enjoy using the following languages:</p>
3737+ <LinkList items={languages} />
3838+ <p>
3939+ As you can probably tell from this site's styling, I am not much of
4040+ a <ExternalLink link="https://en.wikipedia.org/wiki/Front_end_and_back_end">front-end</ExternalLink> developer,
4141+ and tend to keep my websites simple. When I <em>do</em> write frontend stuff, I typically use
4242+ either <ExternalLink link="https://svelte.dev/">Svelte</ExternalLink> or <ExternalLink link="https://vuejs.org/">Vue</ExternalLink>.
4343+ This site has been written with <strong><ExternalLink link="https://astro.build/">Astro</ExternalLink></strong>, both as a means
4444+ of teaching myself Astro and also because it seemed like a good tool to build this site.
4545+ </p>
4646+4747+ <p>
4848+ Besides coding stuff, I like reading, video games, movies, anime and manga, and sometimes working out. I especially like:
4949+ </p>
5050+ <ul>
5151+ <li>
5252+ Books:
5353+ <LinkList items={books} />
5454+ </li>
5555+ <li>
5656+ Video Games:
5757+ <LinkList items={games} />
5858+ </li>
5959+ <li>
6060+ Anime/Manga
6161+ <LinkList items={animeAndManga} />
6262+ </li>
6363+ </ul>
864</BaseLayout>