Issue #43: Set Up PostgreSQL Database (if not already set up)
Labels: epic-8, backend, database, priority-high
Milestone: Epic 8 - Backend Integration
Dependencies: None
Description:
Ensure PostgreSQL database is properly configured and accessible for frontend API.
Acceptance Criteria:
Technical Notes:
Database may already be set up from Rust backend
May need to expose database or create API layer
Issue #44: Create Database Tables (if needed)
Labels: epic-8, backend, database, priority-high
Milestone: Epic 8 - Backend Integration
Dependencies: #43
Description:
Create any additional database tables needed for frontend features (e.g., tasks table, settings table).
Acceptance Criteria:
Technical Notes:
May need to add tasks table if not hardcoded
Settings table for webhook URL, schedule interval
Issue #45: Create API Hooks with TanStack Query
Labels: epic-8, integration, api, priority-high
Milestone: Epic 8 - Backend Integration
Dependencies: #43, #44
Description:
Set up API layer and create React Query hooks for all data operations.
Acceptance Criteria:
Set up API client (axios or fetch wrapper)
Configure base URL from environment variables
Create API hooks for:
People (GET, POST, PUT, DELETE, bulk update)
Assignments (GET current, GET history, POST manual trigger)
Tasks (GET, PUT)
Settings (GET, PUT)
Schedule (GET status, POST trigger)
Add error handling
Add request/response interceptors
Configure query defaults (staleTime, cacheTime)
Write unit tests for hooks
Document API structure
Technical Notes:
May need to create REST API backend (Node.js/Express or Rust API)
Use TanStack Query v5
Handle authentication if needed
Issue #46: Set Up Real-Time Subscriptions (Optional)
Labels: epic-8, integration, real-time, priority-low
Milestone: Epic 8 - Backend Integration
Dependencies: #45
Description:
Implement real-time updates for assignments using WebSockets or Server-Sent Events.
Acceptance Criteria:
Technical Notes:
Optional feature for live updates
May use Socket.io or native WebSocket
Fallback to polling if WebSocket unavailable
Issue #47: Implement Authentication (if needed)
Labels: epic-8, backend, auth, priority-medium
Milestone: Epic 8 - Backend Integration
Dependencies: #45
Description:
Add authentication system if the app requires user login.
Acceptance Criteria:
Technical Notes:
May not be needed if app is internal/trusted
Use React Context or Zustand for auth state
Issue #43: Set Up PostgreSQL Database (if not already set up)
Labels:
epic-8,backend,database,priority-highMilestone: Epic 8 - Backend Integration
Dependencies: None
Description:
Ensure PostgreSQL database is properly configured and accessible for frontend API.
Acceptance Criteria:
Technical Notes:
Issue #44: Create Database Tables (if needed)
Labels:
epic-8,backend,database,priority-highMilestone: Epic 8 - Backend Integration
Dependencies: #43
Description:
Create any additional database tables needed for frontend features (e.g., tasks table, settings table).
Acceptance Criteria:
taskstable (if task config is stored in DB)settingstable (for Discord webhook, schedule config)Technical Notes:
Issue #45: Create API Hooks with TanStack Query
Labels:
epic-8,integration,api,priority-highMilestone: Epic 8 - Backend Integration
Dependencies: #43, #44
Description:
Set up API layer and create React Query hooks for all data operations.
Acceptance Criteria:
Technical Notes:
Issue #46: Set Up Real-Time Subscriptions (Optional)
Labels:
epic-8,integration,real-time,priority-lowMilestone: Epic 8 - Backend Integration
Dependencies: #45
Description:
Implement real-time updates for assignments using WebSockets or Server-Sent Events.
Acceptance Criteria:
Technical Notes:
Issue #47: Implement Authentication (if needed)
Labels:
epic-8,backend,auth,priority-mediumMilestone: Epic 8 - Backend Integration
Dependencies: #45
Description:
Add authentication system if the app requires user login.
Acceptance Criteria:
Technical Notes: