BREEDR - Dog Breeding Genealogy Management System

A reactive, interactive dog breeding genealogy mapping system for professional kennel management.

⚠️ Important: Database Migration Required

If you have an existing BREEDR installation, you must run a migration to fix the microchip field constraint:

# Enter the container
docker exec -it breedr sh

# Run migration
node server/db/migrate_microchip.js

# Exit and restart
exit
docker restart breedr

What this fixes: The microchip field now allows multiple dogs without microchips (previously caused "UNIQUE constraint failed" errors).

See full details: docs/MICROCHIP_FIX.md


Features

  • Interactive Pedigree Visualization - Multi-generational family trees with zoom/pan
  • Health & Genetics Tracking - Comprehensive health records and genetic trait mapping
  • Breeding Management - Heat cycles, pairing analysis, and litter tracking
  • Inbreeding Coefficient Calculator - COI analysis for responsible breeding decisions
  • Trial Pairing Simulator - Preview offspring genetics before breeding
  • Document Management - Digital storage for certificates, contracts, and records
  • Modern UI - Sleek, dark-themed interface with compact info cards

Technology Stack

  • Frontend: React 18 with modern component design
  • Visualization: React-D3-Tree for pedigree charts
  • Backend: Node.js/Express API
  • Database: SQLite (embedded, zero-config)
  • Container: Single Docker image with multi-stage build
  • Styling: CSS custom properties with dark theme

Installation (Unraid)

Build the Docker Image

  1. Clone the repository:
cd /mnt/user/appdata/breedr-build
git clone https://git.alwisp.com/jason/breedr.git .
git checkout feature/ui-redesign  # For latest UI updates
  1. Build the Docker image:
docker build -t breedr:latest .

Deploy in Unraid

  1. Go to Docker tab in Unraid UI
  2. Click Add Container
  3. Configure:
    • Name: Breedr
    • Repository: breedr:latest
    • Network Type: Bridge
    • Port: 3000 → 3000 (or your preferred port)
    • Path 1: /mnt/user/appdata/breedr → /app/data (for database)
    • Path 2: /mnt/user/appdata/breedr/uploads → /app/uploads (for photos/documents)
  4. Click Apply

Access the Application

Navigate to: http://[UNRAID-IP]:3000

Development

Local Development Setup

# Install dependencies
npm install

# Run development server (frontend + backend)
npm run dev

# Build for production
npm run build

Project Structure

breedr/
├── client/           # React frontend
│   ├── src/
│   ├── public/
│   └── package.json
├── server/           # Node.js backend
│   ├── routes/
│   ├── db/
│   │   ├── init.js
│   │   └── migrate_microchip.js
│   └── index.js
├── docs/             # Documentation
│   ├── MICROCHIP_FIX.md
│   ├── UI_REDESIGN.md
│   └── COMPACT_CARDS.md
├── Dockerfile        # Multi-stage Docker build
├── docker-compose.yml
├── package.json
└── README.md

Environment Variables

  • NODE_ENV - production/development (default: production)
  • PORT - Server port (default: 3000)
  • DB_PATH - SQLite database path (default: /app/data/breedr.db)
  • UPLOAD_PATH - Upload directory (default: /app/uploads)

Database Schema

SQLite database automatically initializes on first run with tables:

  • dogs - Core dog registry
  • parents - Parent-child relationships
  • litters - Breeding records
  • health_records - Medical and genetic testing
  • heat_cycles - Breeding cycle tracking
  • traits - Genetic trait mapping

Upgrading

From Earlier Versions

# Stop container
docker stop breedr

# Backup your data
cp -r /mnt/user/appdata/breedr /mnt/user/appdata/breedr-backup

# Pull latest code
cd /mnt/user/appdata/breedr-build
git pull

# Rebuild image
docker build -t breedr:latest .

# Start container (will auto-migrate)
docker start breedr

# Run migration if needed
docker exec -it breedr node server/db/migrate_microchip.js

Roadmap

Phase 1: Foundation (Complete)

  • Project structure
  • Docker containerization
  • Database schema
  • Basic API endpoints
  • Modern UI redesign

🚧 Phase 2: Core Features (In Progress)

  • Dog profile management (CRUD)
  • Photo management
  • Compact info card design
  • Search and filtering
  • Interactive pedigree visualization
  • Parent-child relationship mapping

📋 Phase 3: Breeding Tools

  • Inbreeding coefficient calculator
  • Trial pairing simulator
  • Heat cycle tracking
  • Litter management

📊 Phase 4: Health & Genetics

  • Health record management
  • Genetic trait tracking
  • Document storage

🚀 Phase 5: Advanced Features

  • PDF pedigree generation
  • Reverse pedigree (descendants)
  • Advanced search and filters
  • Export capabilities

Recent Updates

March 8, 2026 - UI Redesign & Bug Fixes

  • Fixed: Microchip field UNIQUE constraint (now properly optional)
  • Added: Migration script for existing databases
  • Redesigned: Modern dark theme with sleek aesthetics
  • Redesigned: Compact horizontal info cards (80x80 avatars)
  • Improved: Dashboard with gradient stats cards
  • Improved: Navigation bar with glass morphism
  • Enhanced: Age calculation and display
  • Added: Sex-colored icons (blue ♂, pink ♀)
  • Added: Registration number badges

License

Private use only - All rights reserved

Support

For issues or questions:

  • Check documentation in docs/ folder
  • Review container logs: docker logs breedr
  • Contact the system administrator
Description
No description provided
Readme 1.2 MiB
Languages
JavaScript 93.4%
CSS 6.1%
Dockerfile 0.4%
HTML 0.1%