## New Time Tracking Query Endpoints
- GET /api/time/active - Get all currently active time tracking sessions
- GET /api/time/summary - Time tracking statistics with flexible date filtering
- GET /api/tasks/{id}/time - Comprehensive time data for specific tasks
- POST /api/tasks/{id}/time/start-with-description - Enhanced time tracking with descriptions
## Advanced Time Analytics
- Daily, weekly, monthly, and custom date range summaries
- Top tasks, projects, and tags by time spent
- Active session monitoring with real-time elapsed time
- Task-specific time histories and session statistics
- Project and tag-based time aggregation
## Key Features
- Flexible date filtering (today, week, month, all, custom ranges)
- Real-time active session tracking across all tasks
- Comprehensive time entry details with descriptions
- Session statistics and productivity metrics
- Top 10 breakdowns by tasks, projects, and tags
## OpenAPI Documentation
- Complete schemas for TimeEntry, ActiveTimeSession, TimeSummary, TaskTimeData
- Enhanced OpenAPI decorators for all time tracking endpoints
- Professional API documentation with detailed examples
- Interactive Swagger UI integration
## Documentation Updates
- Comprehensive time tracking API documentation
- JavaScript TimeTracker class with full functionality
- Python TimeAnalytics class for reporting and dashboards
- Real-world integration examples and use cases
- Complete curl examples and response formats
## API Design
- RESTful endpoint structure following existing patterns
- Proper error handling with meaningful HTTP status codes
- Backward compatibility with existing time tracking endpoints
- Consistent response format across all endpoints
- Query parameter support for flexible data filtering
Transforms TaskNotes into a comprehensive time tracking solution with enterprise-grade analytics and reporting capabilities.
## OpenAPI Specification
- Add decorator-based OpenAPI system with @OpenAPIController and @OpenAPI decorators
- Generate machine-readable OpenAPI 3.0 spec at /api/docs
- Serve interactive Swagger UI documentation at /api/docs/ui
- Complete schema definitions for all API types and responses
- Enable TypeScript experimental decorators support
## Pomodoro API Endpoints
- POST /api/pomodoro/start - Start new pomodoro session with optional task
- POST /api/pomodoro/stop - Stop current session
- POST /api/pomodoro/pause - Pause running session
- POST /api/pomodoro/resume - Resume paused session
- GET /api/pomodoro/status - Get current session status and statistics
- GET /api/pomodoro/sessions - Get session history with filtering
- GET /api/pomodoro/stats - Get daily/date-specific statistics
## Documentation Updates
- Add comprehensive HTTP API documentation with pomodoro examples
- Include JavaScript PomodoroController integration example
- Update feature documentation with view types and settings
- Improve navigation structure across documentation files
## Dependencies
- Add reflect-metadata for decorator metadata support
- Remove unused express dependency
- Update TypeScript configuration for decorator support
All endpoints include proper error handling, OpenAPI documentation, and support for recurring task integration.
- Fixed HTTP API documentation examples that incorrectly used 'notes' field
- Updated JSON payload examples, JavaScript bookmarklet, and automation examples
- Changed field description from 'notes' to 'details' for consistency
- All API examples now correctly reference the 'details' field for task body content
This ensures consistency across the TaskNotes API documentation and aligns
with the actual field name used throughout the codebase.
## New Features
- **HTTP REST API server** with comprehensive task management endpoints
- **Mobile-compatible implementation** using Node.js http module with Platform checks
- **Bearer token authentication** support for secure API access
- **CORS enabled** for browser extension integration
- **Task creation defaults** applied automatically (scheduled date, contexts, etc.)
## API Endpoints
- `GET /api/health` - API health check
- `GET /api/tasks` - List tasks with filtering and pagination
- `POST /api/tasks` - Create new tasks with full TaskNotes integration
- `PUT /api/tasks/{id}` - Update existing tasks
- `DELETE /api/tasks/{id}` - Delete tasks
- `POST /api/tasks/{id}/time/start|stop` - Time tracking
- `GET /api/stats` - Task statistics
- `GET /api/filter-options` - Available filter options
## Settings Integration
- **Dedicated HTTP API tab** in settings (hidden on mobile)
- **Configurable port** and authentication token
- **Settings migration** preserves user data during updates
- **Desktop-only activation** with proper conditional loading
## Technical Implementation
- **Mobile-safe imports** using dynamic imports and Platform.isMobile checks
- **Express.js alternative** using Node.js built-in http module
- **Full CRUD operations** with proper error handling and validation
- **Task creation defaults** integration with existing settings
- **Comprehensive API documentation** with usage examples
## Browser Integration Ready
- **CORS configured** for localhost browser extension access
- **Proper field mapping** (notes → details) for API compatibility
- **Authentication header** support for secure requests
Enables external tools and browser extensions to integrate with TaskNotes
while maintaining full mobile compatibility and user data safety.