Honesty note: Prefer project/PROGRESS_REPORT.md when phase checkmarks may be historical. Item-level tracking: project/ROADMAP_CHECKLIST.md. Overview: PROJECT_OVERVIEW.md.
This document outlines the development roadmap for Simple RSync Daemon, including release milestones, feature plans, and timeline estimates.
Simple RSync Daemon aims to be a lightweight, secure, and feature-rich rsync daemon implementation in C++ that provides:
- Modern C++17 architecture
- Cross-platform support (Linux, macOS, Windows)
- SSL/TLS encryption
- Multiple authentication methods
- Comprehensive monitoring and observability
- Enterprise-grade reliability and performance
Status: Complete Target Date: December 2024 Completion: ~25-30%
Focus: Build infrastructure and code structure
Deliverables:
- ✅ Build system (CMake, Makefile)
- ✅ Code structure and organization
- ✅ Class interfaces and headers
- ✅ Cross-platform configuration
- ✅ Basic logging framework
- ✅ Configuration data structures
- ✅ Documentation structure
Status: Not Started Target Date: Q1 2025 Estimated Effort: 200-300 hours Completion Target: ~60%
Focus: Core rsync functionality - make it work
Critical Deliverables:
- RSync Protocol Implementation (100-150 hours)
- Basic File Transfer (50-75 hours)
- Configuration File Parsing (20-30 hours)
- Module Operations (30-40 hours)
- Basic Authentication (20-30 hours)
- Test Framework (30-50 hours)
Success Criteria:
- Can accept rsync connections
- Can transfer files (basic, no delta sync)
- Can read configuration files
- Can authenticate users
- Has basic test coverage
Status: Planned Target Date: Q2 2025 Estimated Effort: 150-200 hours Completion Target: ~75%
Focus: Complete core functionality and polish
Deliverables:
- Complete Configuration System (JSON support, hot-reload)
- Enhanced Module System (pattern matching, script hooks)
- Improved Authentication (multiple methods, user management)
- Error Handling & Logging (comprehensive error handling, log rotation)
- Testing Expansion (>60% test coverage)
Status: Planned Target Date: Q3 2025 Estimated Effort: 100-150 hours Completion Target: ~85%
Focus: Security features and hardening
Deliverables:
- SSL/TLS Implementation (complete support, certificate management)
- Access Control (IP-based, network-based, access logging)
- Rate Limiting (connection, bandwidth, per-client)
- Security Hardening (privilege dropping, chroot, path validation)
Status: Planned Target Date: Q4 2025 Estimated Effort: 100-150 hours Completion Target: ~90%
Focus: Production readiness
Deliverables:
- Monitoring & Observability (metrics, health checks, Prometheus)
- Testing & Quality (>80% test coverage, performance benchmarks)
- Documentation (complete API docs, deployment guides)
- Packaging & Distribution (Docker images, CI/CD)
Status: Planned Target Date: Q1 2026 Estimated Effort: 150-200 hours Completion Target: ~95%
Focus: Advanced features and optimizations
Deliverables:
- Delta Sync (intelligent synchronization, checksum-based)
- Performance Optimizations (multi-threading, connection pooling)
- Advanced Features (conflict resolution, file versioning)
- Network Enhancements (IPv6, proxy support, load balancing)
Status: Future Target Date: Q2-Q3 2026 Estimated Effort: 200-300 hours Completion Target: 100%
Focus: Complete feature set and enterprise capabilities
Deliverables:
- All Planned Features (YAML config, plugin system, REST API)
- Enterprise Features (high availability, failover, disaster recovery)
- Final Polish (complete test coverage, security audit, documentation)
| Version | Target Date | Focus | Completion | Status |
|---|---|---|---|---|
| v0.1.0 | Dec 2024 | Foundation | 25-30% | ✅ Complete |
| v0.2.0 | Q1 2025 | MVP | 60% | 🎯 Next |
| v0.3.0 | Q2 2025 | Core Features | 75% | 📋 Planned |
| v0.4.0 | Q3 2025 | Security | 85% | 📋 Planned |
| v0.5.0 | Q4 2025 | Production Ready | 90% | 📋 Planned |
| v0.6.0 | Q1 2026 | Advanced Features | 95% | 📋 Planned |
| v1.0.0 | Q2-Q3 2026 | Full Feature Set | 100% | 📋 Future |
- RSync protocol implementation
- File transfer engine
- Configuration system
- Authentication system
- Module system
- SSL/TLS encryption
- Access control
- Rate limiting
- Security hardening
- Monitoring and observability
- Comprehensive testing
- Documentation
- Packaging and distribution
- Delta sync
- Performance optimizations
- Advanced network features
- Plugin system
- REST API
- High availability
- Complete feature set
- Complete core rsync daemon implementation
- Implement basic configuration file parsing (INI)
- Basic authentication and module system
- Basic file transfer (no delta sync)
Target: Working MVP that can transfer files
- Complete configuration system (JSON support)
- Implement SSL/TLS encryption
- Add access control and rate limiting
- Add monitoring and metrics
- Expand test coverage
Target: Production-ready with security features
- Advanced features (delta sync, performance optimizations)
- YAML configuration support
- Plugin system and extensions
- Enterprise features (HA, failover)
- Complete feature set
Target: Full-featured, enterprise-grade rsync daemon
- RSync Protocol Implementation - Core protocol parser and handler
- File Transfer Engine - Basic file transfer operations
- Configuration File Parsing - INI/config file parser
- Module Operations - File operations for modules
- Basic Authentication - Password file authentication
- Test Framework - Testing infrastructure and initial tests
- C++17 standard - Modern C++ features for better code quality
- CMake build system - Cross-platform compatibility
- JSON primary, YAML secondary - JSON for APIs, YAML for human editing
- Plugin architecture - Extensible design for future features
See CONTRIBUTING.md for details on how to contribute. High-priority areas for contribution:
- Core rsync protocol implementation
- Configuration system
- Authentication system
- Testing framework
This roadmap is a living document that will be updated as development progresses. For detailed task checklists, see project/ROADMAP_CHECKLIST.md.