The Projects page (Documentation Index
Fetch the complete documentation index at: https://mintlify.com/apursley2012/aurora-cosmos/llms.txt
Use this file to discover all available pages before exploring further.
/projects) is titled “Discovered Systems” in the template, with the subtitle “Source Code, Decoded from the Void.” It renders every project as a rich card inside a responsive grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8 layout. Cards enter with a staggered scale-up animation, lift on hover, and reveal an orbiting glow dot when the mouse moves over them.
Layout overview
The page wrapper ispy-12 with no max-width constraint, allowing the three-column grid to fill the available content area (which already accounts for the sidebar via lg:pl-20 on the outer layout). Each card is a motion.div with whileHover={{ y: -10 }} to create the floating lift effect.
Each project card is structured as:
- Hover ring — An absolutely-positioned
border-aurora-turquoise/0 → group-hover:border-aurora-turquoise/30ring that transitions in on hover, plus a singleanimate-orbitglow dot that traces a circular path around the card. - Cover image — A
h-48image area withobject-cover, a gradient overlay (from-space-900 to-transparent) fading the bottom edge, and a category badge in the top-left corner. - Card body — Title, description, tech stack badges, and a footer row with demo/repo links.
The template ships with three example projects: “Nebula Dashboard” (Frontend), “Starlight API” (Backend), and “Void CLI” (Tooling). Replace these with your actual projects before deploying.
Card anatomy
Framer Motion animations
Staggered entrance
Each card uses
initial={{ opacity: 0, scale: 0.9 }} → animate={{ opacity: 1, scale: 1 }} with delay: index * 0.1, duration: 0.5. Cards cascade in from left to right as the page loads.Hover lift
whileHover={{ y: -10 }} on the outer motion.div lifts the entire card 10 px upward on hover, giving it a floating-object feel.Image zoom
The cover
<img> uses transform group-hover:scale-110 transition-transform duration-700 to slowly zoom in on hover without Framer Motion, keeping the animation GPU-efficient.Orbit dot
An
animate-orbit class (defined in assets/main.css) spins a w-3 h-3 bg-aurora-turquoise rounded-full dot around the card ring. It’s opacity-0 group-hover:opacity-100 pointer-events-none.Color tokens used
| Element | Token / class |
|---|---|
| Page heading gradient | from-aurora-turquoise to-aurora-teal |
| Card border (default) | border-white/5 |
| Card border (hover) | group-hover:border-aurora-turquoise/50 |
| Card background | bg-space-800/80 |
| Hover ring | group-hover:border-aurora-turquoise/30 |
| Category badge | bg-space-900/80 backdrop-blur-md border-white/10 |
| Category badge icon | text-aurora-turquoise |
| Title hover | group-hover:text-aurora-turquoise |
| Tech badges | bg-white/5 text-slate-300 border-white/10 |
| Demo link | text-aurora-turquoise hover:text-white |
| Repo link | text-cosmic-violet hover:text-white |
| Orbit glow dot | bg-aurora-turquoise shadow-[0_0_10px_#5eead4] |
Adding and editing projects
The project data lives in an array of objects. Each object has this shape:Add a new project
The project data is compiled into the
ue array in assets/main.js. To add projects, fork the original source and push a new object onto the projects array before rebuilding. The grid is fully responsive — it will reflow automatically. You can have any number of cards: 1 column on mobile, 2 on md:, 3 on lg:.Change the cover image
The template uses Unsplash URLs. Replace the
image field with any hosted image URL, a local /public/ asset path, or an imported image. Aim for a 16:9 or 3:2 image at 800 px wide for best quality at the h-48 display height.Update tech stack badges
The
tech array is rendered as individual <span> pills. Any string is valid — use your actual stack names. The badge style is font-mono text-xs px-2 py-1 rounded-md bg-white/5 text-slate-300 border border-white/10.Wire up real links
Replace the placeholder
"#" strings in demoUrl and repoUrl with your actual URLs. The “Run Demo” link uses the ExternalLink icon and text-aurora-turquoise; “Read Logs” uses the Github icon and text-cosmic-violet.