ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
Das Sonnensystem live in 3D entdecken, den Sternenhimmel für deinen Ort sehen und auf einer interaktiven Weltgeschichte-Karte alle Imperien von 3400 v. Chr. bis heute erleben — dazu nebenbei Musik hör
Translation pending
EducationTypeScript · HTMLGitHub @solomongrishnakh-cryptoOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
play music
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗Musik-Website mit React/Next.js: dunkles, futuristisches UI, animierter Partikel-Hintergrund, Songsuche über die echte YouTube Data API, Wiedergabe direkt im Browser über den offiziellen YouTube-Player, „zuletzt gehört"-Verlauf wird im Browser des jeweiligen Besuchers gespeichert.
npm install
cp .env.local.example .env.local
# YOUTUBE_API_KEY in .env.local eintragen (siehe unten)
npm run dev
Danach: http://localhost:3000
Hinweis: In der Umgebung, in der dieses Gerüst erstellt wurde, war npm-Registry-Zugriff gesperrt. Die Dateien wurden von Hand geschrieben (entspricht
create-next-app --typescript --tailwind --app --src-dir).npm installbei dir lokal sollte normal funktionieren.
.env.local als YOUTUBE_API_KEY eintragen.Das kostenlose Standardkontingent (10.000 Einheiten/Tag) reicht für moderaten Suchverkehr; eine Suche kostet ca. 100 Einheiten.
/api/search?q=... auf (eigene Next.js
API-Route). Diese Route ruft serverseitig die YouTube Data API auf — der
API-Key steht nur in der Server-Umgebungsvariable und wird nie an den
Browser ausgeliefert.src/components/player/YoutubePlayer.tsx).
Der Ton läuft über YouTubes eigenen, echten Player — die Website
extrahiert oder speichert nie einen eigenen Audio-Stream.src/lib/history/recentlyPlayed.ts speichert die zuletzt
gespielten Songs im localStorage des Besuchers. Kein Login, kein
Server-Speicher nötig — beim nächsten Besuch im selben Browser ist der
Verlauf wieder da (bis zu 20 Einträge).src/
app/
api/search/route.ts Server-Route: ruft YouTube Data API auf (Key bleibt geheim)
layout.tsx Root-Layout, dunkles Theme
page.tsx Startseite: Suche, Ergebnisse, Verlauf, Player-Bar
globals.css Tailwind + Theme-Utilities
components/
particles/ParticleBackground.tsx Canvas-2D-Partikelsystem (ständig animiert)
search/
SearchBar.tsx Große Suchleiste
SearchResults.tsx Ergebnis-Grid (Suche + „Zuletzt gehört")
SongCard.tsx Einzelne Karte (Cover/Titel/Künstler)
player/YoutubePlayer.tsx Player-Bar unten, steuert YouTube-IFrame-Player
lib/
youtube/search.ts YouTube-Data-API-Anbindung (nur serverseitig genutzt)
history/recentlyPlayed.ts „Zuletzt gehört"-Speicherung (localStorage)
audio/useAudioReactivity.ts Hook-Schnittstelle für künftige Partikel-Musikreaktivität
types/music.ts Song-Datentyp
Diese Version spielt Musik für beliebige Besucher direkt auf der Website ab. Das geht nur legal über eine autorisierte Quelle — hier den offiziellen, eingebetteten YouTube-Player. Es gibt bewusst keine Anbindung an eine modifizierte/ReVanced-App oder sonstige Stream-Extraktion: Das wäre unlizenzierte Wiedergabe fremder, urheberrechtlich geschützter Musik und damit nicht zulässig, egal wie die Web-App das technisch verstecken würde.
useAudioReactivity() liefert aktuell einen
simulierten Pegel. Eine echte Kopplung an den YouTube-Player ist möglich
(z. B. über Web Audio API auf das <video>-Element im IFrame, sofern
YouTube das zulässt) — noch nicht umgesetzt.