One-page site for Skye Powered, LLC. Next.js 16 (App Router) + React 19 + TypeScript + Tailwind CSS v4. Statically rendered so no database, no API routes.
npm run devnpm run build # production build
npm run lint # eslintEverything text-and-links lives in src/lib/site.ts:
company name, tagline, email, and the GitHub / LinkedIn / kevbarnes.com links.
The prose paragraph is in src/app/page.tsx.
- Create the page, e.g.
src/app/legal/privacy/page.tsx. - Add it to
legalLinksinsrc/lib/site.ts.
The footer legal row renders itself from that array and stays hidden while the
array is empty. sitemap.ts lists only the home page today. Add new routes
there as you go.
src/components/SkyBackground.tsx plus the sky section of
src/app/globals.css. SVG clouds drifting right-to-left across three depth
tiers, animated entirely in CSS. That means no three.js, no canvas, no extra dependency,
and it holds still under prefers-reduced-motion.
Tune the clouds by editing the clouds array (position, size, blur, speed).
Day/night palettes are CSS custom properties at the top of globals.css and
follow the OS prefers-color-scheme.
If it ever needs real volumetric depth, swap <SkyBackground /> in
src/app/layout.tsx for a three.js canvas. Nothing else on the page depends
on it.
Static output, so anything works. Current deployed on AWS Amplify. Import the
repo, add skyepowered.com as a custom domain, point DNS. No environment
variables are needed.