10 KiB
BREEDR Development Roadmap
✅ Phase 1: Foundation (COMPLETE)
Infrastructure
- Docker multi-stage build configuration
- SQLite database with automatic initialization
- Express.js API server
- React 18 frontend with Vite
- Git repository structure
Database Schema
- Dogs table with core fields (NO sire/dam columns)
- Parents relationship table for sire/dam tracking
- Litters breeding records
- Health records tracking
- Heat cycles management
- Traits genetic mapping
- Indexes and triggers
- litter_id column for linking puppies to litters
- Clean schema design - NO migrations, fresh init only
API Endpoints
/api/dogs- Full CRUD operations/api/pedigree- Tree generation and COI calculator/api/litters- Breeding records/api/health- Health tracking/api/breeding- Heat cycles and whelping calculator- Photo upload with Multer
- Parent relationship handling via parents table
✅ Phase 2: Core Functionality (COMPLETE)
Dog Management
- Add new dogs with full form
- Edit existing dogs
- View dog details
- List all dogs with search/filter
- Upload multiple photos per dog
- Delete photos
- Parent selection (sire/dam) via parents table
- Proper error handling for API failures
User Interface
- Dashboard with statistics
- Dog list with grid view
- Dog detail pages
- Modal forms for add/edit
- Photo management UI
- Search and sex filtering
- Responsive navigation
- Compact info cards (80x80 avatars)
- Modern dark theme with glass morphism
Features Implemented
- Photo upload and storage
- Parent-child relationships (via parents table)
- Basic information tracking
- Registration numbers
- Microchip tracking (optional)
- Litter linking with litter_id
- Clean database schema with no migrations
✅ Phase 3: Breeding Tools (COMPLETE)
Priority Features
-
Interactive pedigree tree visualization
- Integrate React-D3-Tree
- Show 3-5 generations
- Click to navigate
- Zoom and pan controls
- Beautiful color-coded nodes
- Male/Female distinction
-
Litter Management ✅
- Create litter records
- Link puppies to litter
- Track whelping details
- Auto-link parent relationships
- Database migration for litter_id
- Enhanced API endpoints
- Dual parent selection mode (litter/manual)
- UI fix for proper layout and error handling
-
Trial Pairing Simulator
- Select sire and dam
- Display COI calculation
- Show common ancestors
- Risk assessment display
-
Heat Cycle Management
- Add/edit heat cycles
- Track progesterone levels
- Calendar view
- Breeding date suggestions
📊 Phase 4: Health & Genetics (PLANNED)
Health Records
- Add health test results
- Vaccination tracking
- Medical history timeline
- Document uploads (PDFs, images)
- Alert for expiring vaccinations
Genetic Tracking
- Track inherited traits
- Color genetics calculator
- Health clearance status
- Link traits to ancestors
📊 Phase 5: Advanced Features (PLANNED)
Pedigree Tools
- Reverse pedigree (descendants view)
- PDF pedigree generation
- Export to standard formats
- Print-friendly layouts
- Multi-generation COI analysis
Breeding Planning
- Breeding calendar
- Heat cycle predictions
- Expected whelping alerts
- Breeding history reports
Search & Analytics
- Advanced search filters
- By breed, color, age
- By health clearances
- By registration status
- Statistics dashboard
- Breeding success rates
- Average litter sizes
- Popular pairings
📊 Phase 6: Polish & Optimization (PLANNED)
User Experience
- Loading states for all operations
- Better error messages
- Confirmation dialogs
- Undo functionality
- Keyboard shortcuts
Performance
- Image optimization
- Lazy loading
- API caching
- Database query optimization
Mobile
- Touch-friendly interface
- Mobile photo capture
- Responsive tables
- Offline mode
Documentation
- DATABASE.md - Complete schema documentation
- User-facing documentation
- API documentation
- Video tutorials
- FAQ section
Future Enhancements (BACKLOG)
Multi-User Support
- User authentication
- Role-based permissions
- Activity logs
- Shared access
Integration
- Import from other systems
- Export to Excel/CSV
- Integration with kennel clubs
- Backup to cloud storage
Advanced Genetics
- DNA test result tracking
- Genetic diversity analysis
- Breed-specific calculators
- Health risk predictions
Kennel Management
- Breeding contracts
- Buyer tracking
- Financial records
- Stud service management
🆕 Latest Release: v0.4.0 - Clean Database Schema
What's New in This Release
Database Overhaul ✅
- ✅ Clean schema design - NO migrations, fresh init creates correct structure
- ✅ Removed columns: weight, height (never implemented)
- ✅ Added litter_id column to dogs table with foreign key
- ✅ Parents table approach - NO sire/dam columns in dogs table
- ✅ Proper relationships - Sire/dam stored in separate parents table
- ✅ Database documentation - Comprehensive DATABASE.md file
API Improvements
- ✅ Fixed parent handling - Properly inserts into parents table
- ✅ Added logging - See exactly what's happening during dog creation
- ✅ Error handling - Graceful fallbacks for missing data
- ✅ Query optimization - Select only existing columns
Server Improvements
- ✅ Removed migrations - Clean init.js is source of truth
- ✅ Simplified startup - Just calls initDatabase()
- ✅ Better logging - Clear console output with checkmarks
- ✅ No schema detection - Always uses correct structure
Documentation
- ✅ DATABASE.md - Complete schema reference
- ✅ Updated README - Current features and setup
- ✅ Updated ROADMAP - Accurate progress tracking
- ✅ Troubleshooting guide - Common issues and solutions
Migration Instructions
For fresh installs, the database will initialize correctly automatically.
For existing installations, you need to start fresh:
# Backup your data
cp data/breedr.db data/breedr.db.backup
# Delete old database
rm data/breedr.db
# Pull latest code
git pull origin docs/clean-schema-and-roadmap-update
# Restart application (creates clean database)
docker-compose restart
Note: Parent relationship data cannot be automatically migrated due to schema change from columns to table. You'll need to re-enter parent relationships.
Previous Releases
v0.3.1 - UI Fixes & Error Handling
- Fixed blank screen issue on Add Dog modal
- Improved parent selection layout
- Added comprehensive error handling
- Enhanced visual design with proper spacing
v0.3.0 - Litter Management & Interactive Pedigree
- Added litter_id to dogs table
- Implemented LitterForm component
- Created PedigreeView with React-D3-Tree
- Enhanced DogForm with dual parent selection
- Fixed "no such column: sire" error
- Added comprehensive documentation
v0.2.0 - Dog CRUD operations complete
v0.1.0 - Initial foundation with API and database
Current Sprint Focus
Next Up (Priority)
Option 1: Trial Pairing Simulator (Recommended) 🎯
Complexity: Medium | Impact: High | User Value: Excellent
Why this is recommended:
- Leverages existing COI calculator backend
- Provides immediate breeding decision support
- High value feature for breeders
- Relatively quick to implement
Tasks:
- Create PairingSimulator component
- Add sire/dam selection dropdowns
- Display COI calculation results
- Show common ancestors table
- Add genetic risk assessment
- Color-coded recommendations (green/yellow/red)
Estimated Time: 4-6 hours
Option 2: Heat Cycle Management
Complexity: Medium-High | Impact: Medium | User Value: Good
Why consider this:
- Natural extension of litter management
- Helps with breeding planning
- Provides calendar functionality
Tasks:
- Create HeatCycleForm component
- Add calendar view with heat cycle tracking
- Track progesterone levels
- Implement breeding date suggestions
- Whelping date calculator
Estimated Time: 6-8 hours
Option 3: Health Records System
Complexity: Medium | Impact: High | User Value: Excellent
Why consider this:
- Important for breeding decisions
- Vaccination tracking is valuable
- Document management adds utility
Tasks:
- Create HealthRecordForm component
- Add vaccination tracking with expiry alerts
- Medical history timeline view
- PDF/image document uploads
- Health clearance status badges
Estimated Time: 6-8 hours
Testing Needed
- Add/edit dog forms with litter selection
- Database schema initialization
- Pedigree tree rendering
- Zoom/pan controls
- UI layout fixes
- Error handling for API failures
- Parent relationship creation via parents table
- Trial pairing simulator
- Heat cycle tracking
- Health records
Known Issues
- None currently
How to Contribute
- Pick a feature from "Priority Features"
- Create a feature branch:
feature/feature-name - Implement with tests
- Update this roadmap
- Submit for review
Version History
-
v0.4.0 (Current - March 9, 2026) - Clean Database Schema
- Complete database overhaul with clean normalized design
- Removed migrations, fresh init only
- Parents table for relationships
- Comprehensive documentation
-
v0.3.1 - UI Fixes & Error Handling
- Fixed blank screen issue on Add Dog modal
- Improved parent selection layout
- Added comprehensive error handling
- Enhanced visual design with proper spacing
-
v0.3.0 - Litter Management & Interactive Pedigree
- Added litter_id to dogs table
- Implemented LitterForm component
- Created PedigreeView with React-D3-Tree
- Enhanced DogForm with dual parent selection
- Fixed "no such column: sire" error
- Added comprehensive documentation
-
v0.2.0 - Dog CRUD operations complete
-
v0.1.0 - Initial foundation with API and database