Add analytics page showing productivity trends 📊
I maintainer di solito rispondono entro 2 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 85/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- javascript, react
- Ambito
- frontend
Direzione di ricerca
Inizia dalla nuova pagina in client/src/pages/Analytics.jsx e leggi i componenti esistenti relativi a task e board per verificare come useBoard espone i task e i relativi campi data. Poi esamina App.jsx per individuare le convenzioni delle route e aggiungi la route protetta /analytics richiesta. Il lavoro è completato quando la pagina mostra il conteggio settimanale dei task completati e la route viene renderizzata per un utente autenticato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Add analytics page showing productivity trends 📊
File: client/src/pages/Analytics.jsx (new file)
No way to see productivity over time 💀
How many tasks done per week? fr!!
Fix: create Analytics.jsx page:
const Analytics = () => {
const { tasks } = useBoard()
// group tasks completed by week:
const weeklyData = tasks
.filter(t => t.status === 'done')
.reduce((acc, task) => {
const week = new Date(task.updatedAt)
week.setDate(week.getDate() - week.getDay())
const key = week.toLocaleDateString()
acc[key] = (acc[key] || 0) + 1
return acc
}, {})
// avg completion time per priority:
const avgTime = ['high','medium','low'].map(p => ({
priority: p,
avg: tasks
.filter(t => t.priority === p
&& t.status === 'done')
.reduce((acc, t) => acc +
(new Date(t.updatedAt) - new Date(t.createdAt))
, 0) /
tasks.filter(t => t.priority === p
&& t.status === 'done').length
}))
return (
📊 Analytics
{/* render charts using CSS bars */}
{Object.entries(weeklyData).map(([week, count]) => (
{week}
<div className="h-4 bg-purple-500/30 rounded"
style={{ width:
${count * 20}px }}/>
{count} tasks
))}
)
}
Add route in App.jsx:
<Route path="/analytics"
element={} />
~40 lines! No backend needed 🎯
No chart library needed — pure CSS bars!! 🔥
- Lingua principale
- JavaScript
- Stelle
- 39
- Fork
- 105
- Merge medio
- 1g 13h
- PR unite (30g)
- 41
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di anoopcodehack/DevBoard
-
good first issue
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 96/100
anoopcodehack/DevBoard#639 ·
I maintainer di solito rispondono entro 2 giorni
-
Improve tags input placeholder with examples 🏷️Forse già presa @SwatiManjari l’ha presa oggi. Apertagood first issue
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 96/100
anoopcodehack/DevBoard#638 ·
I maintainer di solito rispondono entro 2 giorni
-
Add "Clear" link next to done count in column header 🗑️Forse già presa Una pull request collegata a questa issue è aperta o già unita. Apertagood first issue
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 96/100
anoopcodehack/DevBoard#637 ·
I maintainer di solito rispondono entro 2 giorni
-
Show current task name in browser tab during Pomodoro ⏱️Forse già presa @SwatiManjari l’ha presa oggi. Apertagood first issue
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 95/100
anoopcodehack/DevBoard#636 ·
I maintainer di solito rispondono entro 2 giorni
-
Animate task count number when it changes 🔢Forse già presa @jiyac-code l’ha presa oggi. Apertagood first issue
Difficoltà 1/5 1-3 ore Idoneità per principianti 95/100
anoopcodehack/DevBoard#635 · 2 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 2 giorni
Tutte le issue di anoopcodehack/DevBoard
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
fix(套件): test_bundle 往仓库的 preset/skills 写哨兵,并发跑的 test_installer 拷贝时撞 ENOENT(CI 红)Forse già presa @Miaotofu01 l’ha presa oggi. Apertaneeds-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
Miaotofu01/Study-Mate#216 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
-
beginner-friendly category:fixtures community enhancement first-timers-only good first issue hacktoberfest help wanted low hanging fruit micro-contribution type: task up-for-grabs
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
Berserk-hub150/skillhawk#229 · 1 commento ·
I maintainer di solito rispondono entro 8 giorni