Add lofi/focus music toggle in Pomodoro timer🎵
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 68/100
- Type d'issue
- Fonctionnalité
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- javascript, react
- Domaine
- frontend
Piste de recherche
Commence par client/src/components/Pomodoro/PomodoroTimer.jsx, le fichier mentionné dans l’issue, et examine comment le minuteur affiche les commandes et gère l’état du composant. Ajoute un interrupteur pour le son d’ambiance en utilisant l’approche Web Audio API décrite dans l’issue ; le travail sera terminé lorsqu’il pourra être activé et désactivé sans paquet supplémentaire et que le minuteur restera utilisable.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Add lofi/focus music toggle in Pomodoro timer
File: client/src/components/Pomodoro/PomodoroTimer.jsx
Pomodoro timer runs silently 💀
Add ambient focus sounds using Web Audio fr!!
Fix: generate lofi-style ambient tone:
const playAmbient = () => {
const ctx = new AudioContext()
// create soft rain-like white noise:
const bufferSize = 2 * ctx.sampleRate
const buffer = ctx.createBuffer(
1, bufferSize, ctx.sampleRate
)
const data = buffer.getChannelData(0)
for (let i = 0; i < bufferSize; i++) {
data[i] = Math.random() * 2 - 1
}
const source = ctx.createBufferSource()
source.buffer = buffer
source.loop = true
// lowpass filter for "rain" effect:
const filter = ctx.createBiquadFilter()
filter.type = 'lowpass'
filter.frequency.value = 400
const gain = ctx.createGain()
gain.gain.value = 0.05 // very quiet
source.connect(filter)
filter.connect(gain)
gain.connect(ctx.destination)
source.start()
return { source, ctx }
}
const [ambient, setAmbient] = useState(null)
const toggleAmbient = () => {
if (ambient) {
ambient.source.stop()
ambient.ctx.close()
setAmbient(null)
} else {
setAmbient(playAmbient())
}
}
<button onClick={toggleAmbient}
className={text-xs transition ${ambient ? 'text-green-400' : 'text-[#555]'}}>
{ambient ? '🎵 on' : '🎵 off'}
Zero packages — pure Web Audio API ✅
~30 lines! No backend needed 🎯
People will use DevBoard JUST for this!! 🔥
- Langage dominant
- JavaScript
- Étoiles
- 39
- Forks
- 105
- Merge moyen
- 1 j 7 h
- PR mergées (30 j)
- 52
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de anoopcodehack/DevBoard
-
enhancement good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
anoopcodehack/DevBoard#668 ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
anoopcodehack/DevBoard#666 ·
Les mainteneurs répondent en général sous 1 jour
-
Show "No snippets yet" empty state in task modal 💻Peut-être pris @tu-lasizzzz l’a pris il y a 4 jours. Ouvertegood first issue
Difficulté 1/5 Moins d'une heure Accessibilité débutants 96/100
anoopcodehack/DevBoard#639 · 2 commentaires · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
good first issue
Difficulté 1/5 Moins d'une heure Accessibilité débutants 96/100
anoopcodehack/DevBoard#637 ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
anoopcodehack/DevBoard#630 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de anoopcodehack/DevBoard
Issues similaires
-
bug require-triage
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
expressjs/expressjs.com#2549 · 1 réaction ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 85/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
vercel-labs/agent-skills#348 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
NanmiCoder/dsh-agent-teams#289 ·
Les mainteneurs répondent en général sous 1 jour