This commit is contained in:
Yovan
2026-11-05 11:55:36 +07:00
commit aed738af00
29 changed files with 1853 additions and 0 deletions
+59
View File
@@ -0,0 +1,59 @@
import Link from "next/link";
import { navLinks } from "../../_data/nav-links";
export default function ContactPage() {
return (
<>
<header className="site-header">
<h1 className="page-title">Contact</h1>
<p className="tagline">Mari terhubung.</p>
<nav className="site-nav">
<ul>
{navLinks.map((link) => (
<li key={link.href}>
<Link href={link.href} className={link.href === "/contact" ? "active" : undefined}>
{link.label}
</Link>
</li>
))}
</ul>
</nav>
</header>
<main className="page-wrapper">
<section className="card">
<h2>Kontak &amp; Media Sosial</h2>
<ul>
<li>
Email: <a href="mailto:yovanbudianto@gmail.com">yovanbudianto@gmail.com</a>
</li>
<li>
Telepon: <a href="tel:+62800000000000">+62 8xx-xxxx-xxxx</a>
</li>
<li>
Instagram:{" "}
<a href="https://www.instagram.com/yovans._?mdxt=djZucGVubnA0b3k2" target="_blank" rel="noopener noreferrer">
@yovans._
</a>
</li>
</ul>
</section>
<section className="card">
<h2>Kampus</h2>
<p>
Program Studi Informatika, Fakultas Teknik,{" "}
<a href="https://www.ukwms.ac.id/" target="_blank" rel="noopener noreferrer">
Universitas Katolik Widya Mandala Surabaya
</a>
, Jl. Kalijudan 37, Surabaya.
</p>
</section>
</main>
<footer className="site-footer">
<p>&copy; 2026 Yovan Budianto Tanujaya - Pemrograman Web, Informatika UKWMS</p>
</footer>
</>
);
}
+21
View File
@@ -0,0 +1,21 @@
import type { Metadata } from "next";
import type { ReactNode } from "react";
// pilihan CSS: external (styles.css).
// alasan: halaman ini hanya teks dan daftar tautan, tampilannya harus sama dengan hobbies.
// external CSS memakai ulang aturan yang sudah ada (navbar, card, footer) tanpa menyalin kode,
// tanpa menambah skrip CDN, dan lebih mudah dirawat daripada inline per elemen.
// tailwind tidak dipilih karena halaman sesederhana ini tidak butuh utility class tambahan.
import "../styles.css";
export const metadata: Metadata = {
title: "Contact - Yovan",
};
export default function ContactLayout({ children }: { children: ReactNode }) {
return (
<html lang="id">
<body className="page-body">{children}</body>
</html>
);
}