phase 2
This commit is contained in:
@@ -24,18 +24,18 @@ The platform needs user accounts and CRUD for tracked websites before anything e
|
||||
|
||||
The main dashboard a user sees after selecting a website, showing key metrics at a glance.
|
||||
|
||||
- [ ] Create `DashboardController` scoped to a single website
|
||||
- [ ] Build a date-range picker component (today, last 7 days, last 30 days, custom range)
|
||||
- [ ] **Metric cards** — display for the selected period:
|
||||
- [x] Create `DashboardController` scoped to a single website
|
||||
- [x] Build a date-range picker component (today, last 7 days, last 30 days, custom range)
|
||||
- [x] **Metric cards** — display for the selected period:
|
||||
- Total page views
|
||||
- Unique visitors
|
||||
- Total sessions
|
||||
- Bounce rate (% of sessions with 1 page view)
|
||||
- Average session duration
|
||||
- Average pages per session
|
||||
- [ ] **Visitors chart** — line/area chart of visitors and page views over time (daily or hourly granularity)
|
||||
- [ ] **Real-time widget** — show active visitors in the last 5 minutes (poll or WebSocket)
|
||||
- [ ] Create an `AnalyticsQueryService` (or similar) to encapsulate all aggregation queries, keeping controllers thin
|
||||
- [x] **Visitors chart** — line/area chart of visitors and page views over time (daily or hourly granularity)
|
||||
- [x] **Real-time widget** — show active visitors in the last 5 minutes (poll or WebSocket)
|
||||
- [x] Create an `AnalyticsQueryService` (or similar) to encapsulate all aggregation queries, keeping controllers thin
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user