Professional landing site for pablofm.com: electronic music radio, DJ sets, and live broadcast presence. Built as a fast, static-first experience with interactive islands only where they add value.
- Astro 5 — Static site generation, minimal JavaScript by default
- React — Islands for the live audio player (
client:visible) - Tailwind CSS — Utility-first styling with a custom cyber-neon theme
- shadcn/ui — Accessible UI primitives (Button, Card) adapted for this project
- Framer Motion — Motion only inside React islands (player), not on the static shell
- Lucide React — Icons in interactive components
Requirements: Node.js ≥ 22.12
npm install
npm run devOpen http://localhost:4321.
npm run build # production build → ./dist/
npm run preview # serve ./dist locallyOptional:
| Variable | Description |
|---|---|
PUBLIC_STREAM_URL |
URL of your live audio stream (e.g. Icecast MP3). If unset, the player uses a demo stream. |
Copy .env.example to .env and adjust as needed.
This project is intended to be released under the MIT License once a LICENSE file is added. Until then, all rights reserved by the author; third-party dependencies remain under their respective licenses.
- Site: pablofm.com
- Games: numen.games
- Store: numinia.store