Show daily task completion streak in navbar
Les mainteneurs répondent en général sous 2 jours
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 72/100
- Type d'issue
- Fonctionnalité
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- javascript, react
- Domaine
- frontend
Piste de recherche
Commencez dans client/src/pages/Dashboard.jsx ; lisez comment onDragEnd gère les tâches déplacées vers l’état terminé et où la barre de navigation est affichée. Ajoutez le suivi de l’historique des tâches terminées et affichez la série calculée. Vérifiez ensuite que l’achèvement des tâches met à jour la série et qu’elle apparaît dans la barre de navigation.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Show daily task completion streak in navbar
File: client/src/pages/Dashboard.jsx
No gamification to keep users
coming back daily 💀 fr!!
Fix: track streak in localStorage:
const calculateStreak = () => {
const history = JSON.parse(
localStorage.getItem('completion_history') || '[]'
)
let streak = 0
const today = new Date().toDateString()
for (let i = 0; i < history.length; i++) {
const date = new Date(history[i])
const expected = new Date()
expected.setDate(expected.getDate() - i)
if (date.toDateString() === expected.toDateString()) {
streak++
} else break
}
return streak
}
// update when task moved to done:
// in onDragEnd when status === 'done':
const history = JSON.parse(
localStorage.getItem('completion_history') || '[]'
)
const today = new Date().toISOString()
if (!history[0] ||
new Date(history[0]).toDateString() !==
new Date().toDateString()) {
history.unshift(today)
localStorage.setItem('completion_history',
JSON.stringify(history.slice(0, 30)))
}
// show in navbar:
{streak > 0 && (
🔥 {streak} day streak
)}
~20 lines! No backend needed 🎯
- Langage dominant
- JavaScript
- Étoiles
- 39
- Forks
- 105
- Merge moyen
- 1 j 12 h
- PR mergées (30 j)
- 27
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
-
good first issue
Difficulté 1/5 1-3 heures Accessibilité débutants 88/100
anoopcodehack/DevBoard#589 ·
Les mainteneurs répondent en général sous 2 jours
-
Import tasks from CSV file 📤Ouverteenhancement good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
anoopcodehack/DevBoard#588 ·
Les mainteneurs répondent en général sous 2 jours
-
good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
anoopcodehack/DevBoard#587 ·
Les mainteneurs répondent en général sous 2 jours
-
good first issue
Difficulté 1/5 Moins d'une heure Accessibilité débutants 90/100
anoopcodehack/DevBoard#586 ·
Les mainteneurs répondent en général sous 2 jours
-
good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
anoopcodehack/DevBoard#584 ·
Les mainteneurs répondent en général sous 2 jours
Toutes les issues de anoopcodehack/DevBoard
Issues similaires
-
agent/scanner bug hive/hosted-available-lke648397-260827-5n31
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 1 jour
-
Unblock: Antena 3 CNN (Romania)Ouverteblocklist:remove check:passed
Difficulté 2/5 Moins d'une heure Accessibilité débutants 66/100
iptv-org/database#36968 · 1 commentaire ·
Les mainteneurs répondent en général sous 9 jours
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 78/100
quarkusio/extensions#3438 ·
-
Placeholder: stale decorations are never removed when includeChildren is true (3.31.x)Peut-être pris @studiokvc l’a pris aujourd’hui. Ouvertearea: editor complexity: trivial good first issue impact: medium
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
ueberdosis/tiptap#8443 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
documentation
Difficulté 1/5 Moins d'une heure Accessibilité débutants 95/100
githubnext/gh-aw-workshop#4294 ·
Les mainteneurs répondent en général sous 1 jour