Initial vault setup
This commit is contained in:
@@ -0,0 +1,105 @@
|
||||
---
|
||||
title: NextBeats
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, music, lofi, radio, ambient, nextjs, typescript]
|
||||
confidence: medium
|
||||
contested: false
|
||||
sources:
|
||||
- https://selfh.st/apps/?tag=music
|
||||
- https://github.com/btahir/next-beats
|
||||
---
|
||||
|
||||
# 📻 NextBeats
|
||||
> Lecteur de musique **lofi / ambient** moderne en Next.js, avec ambiance « rétro TV », superposition de bruitages (pluie, café, feu) et chaînes YouTube customisables. **Repo archivé janvier 2026** (lecture seule).
|
||||
|
||||
| Métadonnée | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | https://nextbeats.vercel.app |
|
||||
| **GitHub** | https://github.com/btahir/next-beats |
|
||||
| **License** | MIT |
|
||||
| **Langage** | TypeScript (Next.js 14) + Tailwind |
|
||||
| **Étoiles** | 26 ⭐ |
|
||||
| **Dernière MAJ** | 2026 (archivé jan. 2026) |
|
||||
| **Catégorie** | [[cat-music]] |
|
||||
|
||||
## Description
|
||||
|
||||
NextBeats n'est pas un *music server* à proprement parler — c'est un **lecteur ambiant web** dans la veine de Lofi Girl ou Radio Garden, mais self-hostable. L'idée : reproduire l'expérience d'un stream lofi pour coder/étudier, avec la possibilité d'**empiler des couches d'ambiance** (pluie, café, feu, vent) par-dessus la musique, et de **brancher ses propres chaînes YouTube** (Lofi Girl, chillhop, jazz lofi). UI « vieux TV cathodique » avec scanlines et glitch léger, rendu entièrement client (flux YouTube dans `<iframe>`).
|
||||
|
||||
**Statut** : le repo a été **archivé en lecture seule en janvier 2026** par btahir. Il reste utilisable en l'état et forkable (code propre, Next.js 14 moderne), mais ne recevra plus de mises à jour upstream. Bonne base pour un fork communautaire.
|
||||
|
||||
**Différenciation** vs [[app-funkwhale]], Navidrome, [[app-jellyfin]] : NextBeats **ne gère pas de bibliothèque locale**, ne scrobble pas, ne tag pas. C'est un pur *consommateur de flux web*. Son utilité est dans le **moment d'écoute** (focus, ambiance) et l'**esthétique**. Idéal en deuxième instance pour compléter un setup musical.
|
||||
|
||||
## Installation
|
||||
|
||||
### Docker Compose
|
||||
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
services:
|
||||
nextbeats:
|
||||
image: ghcr.io/btahir/next-beats:latest
|
||||
container_name: nextbeats
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "3000:3000"
|
||||
environment:
|
||||
- TZ=Europe/Paris
|
||||
- NODE_ENV=production
|
||||
# pas de volumes persistants : settings en localStorage
|
||||
```
|
||||
|
||||
### Installation manuelle
|
||||
|
||||
```bash
|
||||
git clone https://github.com/btahir/next-beats
|
||||
cd next-beats
|
||||
npm install && npm run build && npm start
|
||||
# UI sur :3000
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
- **Chaînes YouTube** : ajouter une URL de stream lofi → nom + description → sauvegardé en `localStorage`.
|
||||
- **Sound effects** : 6 intégrés (café, clavier, feu, pluie, white noise, vent) + custom via URL YouTube.
|
||||
- **Volumes indépendants** : slider musique / slider effets. Sur mobile, contrôle programmatique limité → boutons hardware.
|
||||
- **Thèmes** : plusieurs palettes (rétro TV par défaut).
|
||||
- **Persistance** : tout en `localStorage` navigateur, **pas de synchro multi-device**.
|
||||
|
||||
## Alternatives
|
||||
|
||||
### Open Source
|
||||
- **Lofi-Girl-Player** (forks) — clones Lofi Girl sans ambiances empilables.
|
||||
- **Radio Garden** (site public) — radios FM du monde en globe 3D, non self-hosté.
|
||||
- [[app-funkwhale]] ou [[app-jellyfin]] + chaînes IPTV lofi — détournement.
|
||||
- [[app-homepage]] — widget embarquant un player lofi.
|
||||
|
||||
### Propriétaires
|
||||
- **Lofi Girl** (YouTube) — non self-hosté, dépend de YouTube.
|
||||
- **Chillhop Music** — idem.
|
||||
- **Endel** — algo génératif ambiant, fermé, abonnement.
|
||||
- **Noisli** — mix d'ambiances freemium.
|
||||
|
||||
## Sécurité
|
||||
- **Repo archivé** : pas de patchs sécurité → ne pas exposer directement sur Internet sans reverse-proxy WAF ([[app-traefik]] + Crowdsec) et sur sous-domaine dédié.
|
||||
- **YouTube IFrame API** : contenu servi côté client, IP navigateur loguée par Google.
|
||||
- **Pas d'auth** intégrée, accès libre sur LAN ou exposition.
|
||||
- **localStorage** : pas de PII, juste préférences UX, RGPD-safe.
|
||||
- **Dépendances npm** : `npm audit` régulièrement, surtout sur repo archivé.
|
||||
- **Build** : `next build` produit du SSR — vérifier qu'aucun secret n'est embarqué.
|
||||
|
||||
## Ressources
|
||||
- Repository : https://github.com/btahir/next-beats
|
||||
- Démo live : https://nextbeats.vercel.app (instance publique du mainteneur)
|
||||
- Next.js : https://nextjs.org/
|
||||
|
||||
## Pages Liées
|
||||
- [[cat-music]] — catégorie parente
|
||||
- [[app-funkwhale]] — serveur musical « sérieux » (complément)
|
||||
- [[app-jellyfin]] — alternative serveur
|
||||
- [[app-homepage]] — dashboard pour embarquer NextBeats
|
||||
- [[app-traefik]] — reverse proxy
|
||||
- [[recettes-docker-compose]] — templates
|
||||
- [[securisation-home-lab]] — bonnes pratiques
|
||||
Reference in New Issue
Block a user