Redesign landing page and add Caddy deployment for nomadro.com

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
eric
2026-07-11 11:25:50 -05:00
parent e452424f61
commit d2b381ac7b
23 changed files with 730 additions and 513 deletions

View File

@@ -1,11 +1,20 @@
"use client";
const PARTICLES = Array.from({ length: 50 }, (_, i) => ({
size: 4 + (i % 6),
const COLOR_MAP = {
cyan: "from-cyan-400/60 to-cyan-300/30",
violet: "from-violet-400/60 to-violet-300/30",
fuchsia: "from-fuchsia-400/60 to-fuchsia-300/30",
} as const;
type ParticleColor = keyof typeof COLOR_MAP;
const PARTICLES = Array.from({ length: 60 }, (_, i) => ({
size: 2 + (i % 5),
left: (i * 17.3) % 100,
top: (i * 23.7) % 100,
duration: 10 + (i % 8),
delay: (i * 0.3) % 5,
duration: 12 + (i % 10),
delay: (i * 0.4) % 6,
color: (i % 3 === 0 ? "cyan" : i % 3 === 1 ? "violet" : "fuchsia") as ParticleColor,
}));
export function Particles() {
@@ -14,13 +23,13 @@ export function Particles() {
{PARTICLES.map((p, i) => (
<div
key={i}
className="absolute rounded-full bg-gradient-to-br from-violet-400/50 via-fuchsia-400/40 to-cyan-400/50 blur-[1px]"
className={`absolute rounded-full bg-gradient-to-br ${COLOR_MAP[p.color]} blur-[0.5px]`}
style={{
width: `${p.size}px`,
height: `${p.size}px`,
left: `${p.left}%`,
top: `${p.top}%`,
animation: `float ${p.duration}s ease-in-out infinite`,
animation: `float ${p.duration}s ease-in-out infinite, twinkle ${3 + (i % 4)}s ease-in-out infinite`,
animationDelay: `${p.delay}s`,
}}
/>