The Contact page — labeled “CONTACT” in the top navigation — is your open communications channel. Titled “Comms Array” in the UI, it pairs a full-featured contact form with a sidebar of direct links (GitHub, LinkedIn, email) and a simulated recent-activity log. Submitting the form triggers an animated “TRANSMITTING…” state before resetting.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/apursley2012/telemetry/llms.txt
Use this file to discover all available pages before exploring further.
Route
main.js, registered as the contact child route under /.
Static Shell
The filepages/Contact.html is the standalone entry point:
Page Layout
The page fills100vh minus the header and uses a three-column grid at large breakpoints:
Contact Form (left, 2 cols)
A
bg-midnight-navy/40 panel with a scanning line animation. Three fields: name, email, and message textarea. Submit button shows “INITIATE TRANSMISSION” normally and an animated “TRANSMITTING…” pulse on submit.Sidebar (right, 1 col)
Two cards: Established Channels (GitHub, LinkedIn, email links) and Recent Activity (a static log of timestamped status messages).
Contact Form Fields
| Field | Type | Label | Placeholder |
|---|---|---|---|
| Name | text | FREQUENCY: SENDER_ID | "Enter your designation..." |
email | FREQUENCY: RETURN_COORD | "Enter email coordinates..." | |
| Message | textarea (6 rows) | PAYLOAD: MESSAGE_DATA | "Type your transmission here..." |
Radio icon in text-aurora-cyan next to each label. On submit, onSubmit prevents default, sets isSending: true, and uses setTimeout(..., 2000) to reset — the current implementation is a placeholder with no server call.
Scanning Line Animation
Amotion.div element with w-full h-1 bg-aurora-teal/20 animates y: ["0%", "1000%"] over 8 seconds on an infinite loop, creating a radar-scan sweep effect across the form panel.
Established Channels
The sidebar’s Established Channels card renders three link rows. Each row has:- A circular icon badge (
Github,Linkedin, orMailicon) - A label in
text-aurora-violet font-mono text-[10px] - The URL/handle value in
text-white font-sans text-sm
Available Icons
The following Lucide React icons are bundled and available for contact links:| Icon name | Suggested use |
|---|---|
Github | GitHub profile or repository |
Linkedin | LinkedIn profile |
Mail | Email address |
Send | Form submit button, DM link |
ExternalLink | Any external URL |
Updating Contact Links
The three link items are defined inline inside the Contact page component as an array literal:The handle values above are example placeholder values. Replace them with your real username, profile URL, and email address.
Replace placeholder values
Update each
val string with your real handle or address. The values are display text only — the links themselves use href="#" placeholders.Update the href attributes
Find the
<a href="#"> element that wraps each channel row. Replace "#" with the real URL:Add external link attributes
For GitHub and LinkedIn, add
target="_blank" rel="noopener noreferrer" to open in a new tab.Wiring Up the Contact Form
The currentonSubmit handler is a frontend-only simulation. To send real messages, replace the handler body with a fetch call to your preferred service:
- Formspree
- EmailJS
- Custom API
Recent Activity Panel
The sidebar’s lower card shows a static three-line activity log styled as mission timestamps:text-aurora-cyan to indicate the current awaiting state. Replace these strings with recent actual activity — e.g. last commit date, last blog post published, or current availability status.