How pyeimy811-max/sinfonia works
Sinfonia is a Spanish/English music-discovery frontend. Visitors browse a home page or catalog, filter by genre, inspect genre-specific artists, albums and tracks, and select albums for a detail view. The app also provides localized navigation, accessibility controls, and cookie preferences. The README gives no further product detail; some capabilities are represented from the source index, so links to unsampled implementations are omitted or marked unverified.
Main entry points: App.jsx App shell · Catalogo.jsx Catalog page · Navbar.jsx Navigation · SeccionesAlbumes.jsx Album sections
Components 26
Application shell
- React entry
src/main.jsx - App shell
src/App.jsx
Music discovery
- Home hero
src/components/HeroSintonia/HeroSintonia.jsx - Cover collage
src/components/CollagePortadas/CollagePortadas.jsx - Album sections
src/components/SeccionesAlbumes/SeccionesAlbumes.jsx - Album card
src/components/TarjetaAlbum/TarjetaAlbum.jsx - Genre sections
src/components/SeccionGeneros/SeccionGeneros.jsx - Genre card
src/components/TarjetaGenero/TarjetaGenero.jsx - Catalog page
src/pages/Catalogo/Catalogo.jsx - Catalog heading
src/components/EncabezadoCatalogo/EncabezadoCatalogo.jsx - Artist card
src/components/TarjetaArtista/TarjetaArtista.jsx - Track list
src/components/ListaCanciones/ListaCanciones.jsx
Shared interface
- Navigation
src/components/Navbar/Navbar.jsx - Accessibility panel
src/components/PanelAccesibilidad/PanelAccesibilidad.jsx - Interface icons
src/components/Icono.jsx - Album artwork
src/components/PortadaAlbum/PortadaAlbum.jsx - Registration invitation
src/components/InvitacionRegistro/InvitacionRegistro.jsx - Cookie banner
src/components/BannerCookies/BannerCookies.jsx - Footer
src/components/Footer/Footer.jsx
Data and preferences
- Text loader
src/hooks/useTextos.js - Album loader
src/hooks/useALbumes.js - Genre loader
src/hooks/useGeneros.js - Genre detail loader
src/hooks/useGenero.js - Cookie preferences
src/services/cookies.js
Other components
- Visitor
- Sinfonia API
Connections 35
- Visitor → React entry: opens app
src/main.jsx - React entry → App shell: renders
src/main.jsx - App shell → Navigation: renders
src/App.jsx - App shell → Home hero: renders
src/App.jsx - App shell → Album sections: renders
src/App.jsx - App shell → Genre sections: renders
src/App.jsx - App shell → Catalog page: routes to
src/App.jsx - App shell → Registration invitation: renders
src/App.jsx - App shell → Cookie banner: renders
src/App.jsx - App shell → Footer: renders
src/App.jsx - App shell → Text loader: loads text
src/App.jsx - App shell → Album loader: loads albums
src/App.jsx - App shell → Genre loader: loads genres
src/App.jsx - App shell → Cookie preferences: reads language
src/App.jsx - Navigation → Accessibility panel: opens panel
src/components/Navbar/Navbar.jsx - Navigation → Interface icons: renders
src/components/Navbar/Navbar.jsx - Accessibility panel → Interface icons: renders
src/components/PanelAccesibilidad/PanelAccesibilidad.jsx - Home hero → Cover collage: renders
src/components/HeroSintonia/HeroSintonia.jsx - Cover collage → Album artwork: renders
src/components/CollagePortadas/CollagePortadas.jsx - Album sections → Album card: renders
src/components/SeccionesAlbumes/SeccionesAlbumes.jsx - Album card → Album artwork: renders
src/components/TarjetaAlbum/TarjetaAlbum.jsx - Genre sections → Genre card: renders
src/components/SeccionGeneros/SeccionGeneros.jsx - Genre card → Album artwork: renders
src/components/TarjetaGenero/TarjetaGenero.jsx - Catalog page → Catalog heading: renders
src/pages/Catalogo/Catalogo.jsx - Catalog page → Genre sections: renders
src/pages/Catalogo/Catalogo.jsx - Catalog page → Album sections: renders
src/pages/Catalogo/Catalogo.jsx - Catalog page → Artist card: renders
src/pages/Catalogo/Catalogo.jsx - Catalog page → Track list: renders
src/pages/Catalogo/Catalogo.jsx - Catalog page → Genre detail loader: loads genre detail
src/pages/Catalogo/Catalogo.jsx - Catalog page → Album loader: loads albums
src/pages/Catalogo/Catalogo.jsx - Cookie banner → Cookie preferences: uses preferences
src/components/BannerCookies/BannerCookies.jsx - Text loader → Sinfonia API: fetches translations
src/hooks/useTextos.js - Album loader → Sinfonia API: fetches albums
src/hooks/useALbumes.js - Genre detail loader → Sinfonia API: fetches genre detail
src/hooks/useGenero.js - Genre loader → Sinfonia API