The Home page (Documentation Index
Fetch the complete documentation index at: https://mintlify.com/apursley2012/dev-nexus/llms.txt
Use this file to discover all available pages before exploring further.
/) is the entry point for Dev Nexus — a full-screen ambient portal that sets the arcane aesthetic immediately. Rather than a conventional hero section, it renders a layered orbital sigil as the primary navigation mechanism. Six radial nodes surround a central identity circle, each linking to a core section of the portfolio. Every element fades in with staggered opacity animations powered by Framer Motion, giving the impression of a ritual circle materializing from darkness.
Route & Navigation
| Property | Value |
|---|---|
| Route | / |
| Nav Label | PORTAL |
| Page Heading | (no visible <h1> — the sigil IS the UI) |
Visual Structure
Orbit Sigil
The sigil is built from three concentric layers, all animated independently:- Outer rotating ring — A solid circular track that spins clockwise at a constant velocity. Fifteen code-syntax characters are evenly distributed along its circumference and orbit with it.
- Inner dashed ring — A dashed-border circle that counter-rotates, creating a sense of arcane interference between the two layers.
- Center identity circle — A static circle displaying the developer’s name and title.
sin/cos transforms) and inherits the parent ring’s rotation, so they orbit as a unified constellation.
Center Circle
The center circle displays two lines of text:Radial Navigation Nodes
Six navigation nodes are placed at 60° intervals around the sigil. Each node is a clickable pill/button that routes to a page using React Router’s<Link> component.
| Angle | Label | Route |
|---|---|---|
| 0° | ORIGIN | /about |
| 60° | SPELLS | /projects |
| 120° | ARSENAL | /skills |
| 180° | SCROLLS | /writing |
| 240° | RITUALS | /case-studies |
| 300° | SUMMON | /contact |
radius constant in the component to push the nodes closer to or further from the sigil center.
Bottom Label
A single line of text anchors the bottom of the viewport:Animations
All elements use Framer Motion with aninitial={{ opacity: 0 }} state and an animate={{ opacity: 1 }} target. Entrance animations are staggered via transition.delay values so the sigil layers appear sequentially rather than all at once.
animate={{ rotate: 360 }} with transition={{ repeat: Infinity, duration: 20, ease: "linear" }}. The inner ring uses a negative duration equivalent to spin in the opposite direction.
The Home page has no scroll — it is intentionally a single-viewport experience. All content must fit within
100vh. If you add more nav nodes, reduce the sigil radius or adjust node font sizes to prevent overflow on smaller screens.Customization
Changing the developer identity: Edit the two text strings inside the center circle element — one for the name, one for the role title. Adding or removing orbit characters: The character array is defined near the top of the Home component. Add or remove entries; the positioning math distributes them evenly regardless of count. Adjusting animation speed: Change theduration value on the outer ring’s Infinity transition. The inner ring’s counter-rotation speed is set independently — keep both values harmonious to preserve the visual effect.
Changing nav node labels or routes:
The node array maps label strings to route paths. Update either value to rename a section or reroute a node without breaking the sigil layout.