Files
gh-christianlouis-dmarq/docs/todo.md
T
Christian Krakau-Louis 5e8b1f033f Add comprehensive documentation for DMARQ, including user guides, deployment instructions, and feature descriptions
- Created main documentation index and user guide with sections on getting started, dashboard overview, managing domains, and reports.
- Added detailed deployment guide for Docker and manual installation.
- Included user-friendly explanations of DMARC, its benefits, and how to manage domains and reports.
- Implemented visual assets for dashboard, domains, IMAP, and reports.
- Established requirements for documentation build using MkDocs and Material theme.
- Integrated navigation structure for easy access to all documentation sections.
2025-04-21 01:49:34 +02:00

3.9 KiB

DMARQ Implementation Todo List

This file tracks the specific implementation tasks for each milestone of the DMARQ project.

Milestone 1: Minimal Viable Product (MVP)

Infrastructure Setup

  • Set up FastAPI project structure
  • Configure Tailwind CSS
  • Create Docker and Docker Compose files
  • Set up CI/CD pipeline (optional for MVP)

Core DMARC Parser

  • Integrate parsedmarc library
  • Create parsing service for DMARC XML reports
  • Add support for ZIP/GZ compression extraction
  • Implement validation for uploaded reports

Data Models

  • Create Domain model
  • Create AggregateReport model
  • Create ReportRecord model for individual sending sources
  • Design in-memory storage for MVP phase

API Endpoints

  • Create domain registration endpoint
  • Create report upload endpoint
  • Create domain summary endpoints
  • Create detailed report view endpoints

Frontend

  • Create base layout template
  • Implement dashboard overview page
  • Create domain list component
  • Build report upload interface
  • Implement domain detail view
  • Create report detail view
  • Add basic visualization components for report statistics

Testing

  • Create unit tests for parser
  • Create API tests
  • Collect sample DMARC reports for testing
  • Manual UI testing

Documentation

  • Create user guide for MVP
  • Document deployment instructions
  • Add sample screenshots

Milestone 2: IMAP Integration

IMAP Client

  • Create IMAP connection service
  • Implement mailbox search functionality for DMARC reports
  • Add attachment extraction capabilities
  • Create email filtering logic (by sender, subject)
  • Add processed email tracking

Scheduler

  • Implement background task system
  • Create scheduler for periodic mailbox checking
  • Add timestamp tracking for fetched reports
  • Create logging for background processes

Configuration

  • Create configuration model for IMAP settings
  • Build configuration UI
  • Implement secure credential storage
  • Add connection testing functionality

Frontend Updates

  • Add IMAP configuration page
  • Create last sync indicator
  • Implement manual sync trigger button
  • Add status indicators for background processes

Milestone 3: Database Integration

Database Setup

  • Set up SQLAlchemy ORM
  • Create SQLite database (for initial version)
  • Design database schema with migrations
  • Implement data access layer

Model Migration

  • Convert in-memory models to database models
  • Create Domain table
  • Create AggregateReport table
  • Create ReportRecord table for sender details
  • Implement relationships between models

Domain Management

  • Create UI for adding/editing domains
  • Implement domain validation
  • Add domain deletion with data cleanup
  • Create domain filtering/search for larger sets

Query Optimization

  • Add pagination for large report sets
  • Implement efficient queries for dashboard stats
  • Create data summarization for performance
  • Add database indexes for common queries

Milestone 4: Dashboard Enhancements

Data Visualization

  • Integrate Chart.js library
  • Create time-series charts for DMARC compliance
  • Add volume charts for email traffic
  • Implement sender breakdown visualizations
  • Create policy distribution charts

Dashboard Widgets

  • Create compliance rate summary widget
  • Add enforcement rate widget
  • Implement email volume trends widget
  • Create top sender sources widget
  • Add alert status summary (for later integration)

Historical Data

  • Implement date range filtering
  • Create historical trend analysis
  • Add data aggregation for different time periods
  • Implement data comparison features

Future Milestones

Additional tasks for Milestones 5-11 will be added as we approach those phases of development.