hoangsonww / hoangsonww/Task-Manager-ReactNative
Feature: Expand statistics with goals, date ranges, trends, and accessible reports
- Dominant language
- TypeScript
- Stars
- 32
- Forks
- 8
- PR merge metrics
- No merged PRs in 30d
Description
## Summary
Turn the current snapshot charts into a configurable productivity reporting experience with consistent metrics, goals, trends, and accessible alternatives.
## Problem / Opportunity
Stats currently reports total/completed counts, overdue versus upcoming tasks, and tasks grouped by due month. It does not let users select a period, distinguish created from completed work over time, compare trends, or define a goal. Visual charts also need equivalent non-visual data.
## Proposed Feature
Add date-range and metadata filters, completion and overdue trend metrics, configurable goals, period comparison, and text/table report modes. Centralize metric definitions so cards, charts, and tests cannot disagree.
## Scope
- Extract timezone-aware analytics selectors/services from the Stats screen.
- Support preset and custom date ranges with documented inclusion rules.
- Add completion rate, tasks created/completed over time, overdue trend, and median completion-time metrics where data permits.
- Persist per-user goals and show progress without punitive messaging.
- Provide table/text equivalents and export a filtered summary in an accessible format.
- Add fixtures for edge cases and metric documentation.
## Acceptance Criteria
- [ ] Users can select common ranges and a custom range, with the active timezone visible or documented.
- [ ] Metrics distinguish task creation date, due date, and completion date instead of treating them interchangeably.
- [ ] Users can set, edit, pause, and remove a measurable personal goal.
- [ ] The report compares the selected period to an equivalent prior period when enough data exists.
- [ ] Every chart has a synchronized textual or tabular representation navigable by keyboard and screen reader.
- [ ] Empty, partial, single-point, and large datasets render without misleading interpolation or division errors.
- [ ] Filters and theme changes update all cards, charts, and accessible summaries consistently.
- [ ] Metric computations are isolated from presentation and covered by deterministic timezone-aware tests.
- [ ] Performance remains acceptable for a documented task-count target.
- [ ] User documentation defines every metric, date boundary, comparison, and goal behavior.
## Non-Goals
- AI coaching or automated behavioral recommendations.
- Competitive leaderboards or social scoring.
- Enterprise business-intelligence dashboards.
## Dependencies / Risks
- Accurate completion trends require preserving when completion occurred, not only the latest update time.
- Historical metrics can be distorted by edits unless event semantics are defined.
- Charts must not imply precision that sparse data does not support.
## Open Questions
- Which two or three metrics should lead the default view?
- Should goals measure completions, planned work, overdue reduction, or a user-selected metric?
- Is report export part of this issue or a follow-up once portable export exists?
Contributor guide
Assessment
This issue has not been assessed yet.