| # | Requirement | Description |
|---|-------------|-------------|
| FR‑01 | View Switcher | A persistent control (dropdown + keyboard shortcuts) allows toggling between Month, 2‑Week, Week, and Agenda views. The control must remember the last selected view per user. |
| FR‑02 | Time‑Zone Engine | Detects user’s browser/OS time‑zone. Each event stores an explicit timezone field (IANA tz string). UI shows the event time in both the user’s zone and the event’s original zone. Users may override per‑event zone via a dropdown. |
| FR‑03 | Heat‑Map Overlay | For each selected calendar, a translucent colored band is rendered on the day cells representing the aggregate busy‑time density (0 %–100 %). Colors follow the brand palette (green → orange → red). Users can toggle individual calendars on/off. |
| FR‑04 | Multi‑Calendar Sync | • Outlook: Use Microsoft Graph GET /me/events (beta) for read/write.
• iCal: Implement CalDAV PROPFIND/REPORT for calendars.
• Sync runs every 5 min (or on user‑triggered “Refresh”).
• Conflict resolution: server‑side “last‑write‑wins” with optional user prompt. |
| FR‑05 | Event Creation / Edit | UI must expose:
• Title, description, location, attendees, start/end (with time‑zone picker).
• “Add to calendar(s)” checklist.
• Real‑time conflict detection (red border if overlapping). |
| FR‑06 | Accessibility | All interactive elements reachable via keyboard, ARIA labels present, color contrast ≥ 4.5:1, and screen‑reader friendly navigation. |
| FR‑07 | Performance | Initial calendar load ≤ 2 seconds on a 3G connection (simulated). Subsequent view switches ≤ 800 ms. |
| FR‑08 | Audit Trail | Every create, update, delete operation logs: userId, eventId, action, timestamp, source (Google/Outlook/iCal). Stored in audit.calendar_events. |
| In‑Scope | Out‑of‑Scope |
|--------------|-------------------|
| • UI components for dynamic view switching.
• Time‑zone auto‑detect + per‑event override UI.
• Heat‑map overlay for up to 5 calendars.
• Bi‑directional sync APIs for Outlook (Microsoft Graph) & iCal (CalDAV).
• Server‑side caching of calendar data (24‑hr TTL).
• Documentation & release notes. | • Full‑featured resource‑booking (rooms, equipment).
• AI‑driven meeting‑time suggestions (future roadmap).
• Mobile‑only offline cache (to be added in v3.5). | JUL-783
| ID | JUL‑783 |
|--------|---------|
| Title | “Smart “July” Calendar” – Dynamic, context‑aware calendar view for the July product suite |
| Owner | Product: July Core – Emma Li
Engineering: Backend – Carlos M.; Front‑end – Priya R.; QA – Sam D. |
| Target Release | v3.4.0 (July‑2026) |
| Stakeholders | - End‑users (individual & enterprise)
- Sales & Customer Success (need to showcase new calendar capabilities)
- Marketing (new feature promotion)
- Legal/Compliance (data‑privacy) |
| Business Value | 1. Increases daily active users (DAU) by +12 % (forecast) via richer engagement.
2. Reduces support tickets related to “missed events / time‑zone confusion” by ≈30 %.
3. Enables upsell of the “Premium Scheduling” add‑on. |
| Priority | P1 – Must have for the v3.4 roadmap. | Change default credentials and set device time and