Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/apursley2012/y2k-webring/llms.txt

Use this file to discover all available pages before exploring further.

The Contact page (/#/contact) is modelled on the classic early-2000s web guestbook. It displays existing entries sourced from portfolioData.guestbook (G export) and surfaces the developer’s social links from devInfo.socials.

Guestbook entry schema

FieldTypeDescription
idnumberUnique numeric identifier
namestringVisitor’s display name (e.g. "Recruiter_Sarah")
datestringISO date of the entry (e.g. "2026-05-20")
textstringThe visitor’s message
colorstringTailwind text-colour class applied to the entry name

Sample entries

idnamecolor
1Recruiter_Sarahtext-y2k-lime
2Dev_Davetext-y2k-cyan
3Design_Witchtext-y2k-magenta
Each entry is rendered inside a BorderedPanel, with the name coloured by its color class and the text displayed as a paragraph below the date.

Guestbook count

The devInfo.guestbookCount field (currently 1337) is displayed as a retro counter badge on the page — a nod to the hit-counter widgets of early personal websites. Update this number manually in portfolioData.devInfo to keep it in sync if you wire up a real backend.

Static vs. live backend

In the default implementation, guestbook entries are managed entirely in data/portfolioData.js. There is no form submission or live database — entries are added by editing the guestbook array directly.
To collect real submissions, replace the static array with a live data source:
// Example: fetch entries from a Supabase table instead of static data
const { data: guestbook } = await supabase
  .from("guestbook")
  .select("*")
  .order("date", { ascending: false });
  • Supabase — Postgres-backed REST/realtime API; free tier available.
  • Netlify Forms — Zero-config form handling for static sites; entries appear in the Netlify dashboard.
  • Airtable — Simple spreadsheet-style database with a REST API; good for low-volume guestbooks.
If you add a live submission form, include spam protection (honeypot field or CAPTCHA) — guestbooks are a popular target for bots.

Build docs developers (and LLMs) love