Files
breedr/README.md
T
Jason Stedwell a06ddf0435
Build and Push Docker Image / build (push) Successful in 16s
Docs: bring all documentation current with v0.8.1
- README: v0.8.1 highlights, Node 18+ requirement + client install step for
  manual dev setup, health/genetics features listed, release summary updated
- API.md: paginated response shapes for dogs/litters, validation + status-code
  behavior (400/404), full breeding heat-cycle CRUD, genetics PUT/DELETE,
  pedigree COI/relations/cancer-lineage endpoints, corrected Litter object
- DEVELOPMENT.md: two-layer migration approach documented with schema-drift
  warning, heat_cycles/cancer_history tables, Toast/ConfirmDialog UI patterns
  (no alert/window.confirm), full env-var table, auth-deferred decision noted
- INSTALL.md: fixed API smoke-test (old /api/health root path doesn't exist),
  master -> main
- ROADMAP: v0.8.1 entry; Phase 4b checkboxes reconciled with what's actually
  built; Phase 6 progress; pre-deploy prod-DB check added to QA list

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 15:43:23 -05:00

94 lines
4.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# BREEDR - Dog Breeding Genealogy Management System
A reactive, interactive dog breeding genealogy mapping system for professional kennel management.
---
## 🌟 Recent Highlights (v0.8.1 — July 2026)
- **✅ Fresh-install fix** — Schema definitions reconciled with the routes; a brand-new database now boots with heat cycles, litters, and puppy logs fully working.
- **✅ Health Records overhaul** — Per-type record forms (OFA / vaccination / exam / surgery / medication), document upload (PDF/image), OFA age validation, and delete actions.
- **✅ UX layer** — Toast notifications, proper confirmation dialogs, load-error banners with retry, a 404 page, and mobile-friendly layouts across all pages.
- **✅ Hardened API** — Sire/dam sex validation, transactional writes, and safe photo handling.
---
## 🚀 Quick Start
### 1. Docker Deployment (Recommended)
```bash
git clone https://git.alwisp.com/jason/breedr.git
cd breedr
docker-compose up -d --build
```
Access at: `http://localhost:3000`
### 2. Manual Development Setup
Requires **Node.js 18+** (better-sqlite3 v11 ships prebuilds for Node 1824).
```bash
npm install
cd client && npm install && cd ..
npm run dev # runs API (nodemon, :3000) + client (vite, :5173) together
```
> **Note:** The database initializes automatically on first boot — tables and columns are created/added via safe guards. No manual migrations are required.
---
## 🐕 Managing Your Kennel
- **Adding Dogs**: Go to the **Dogs** page, click **Add New Dog**. You can mark dogs as **External** if they aren't in your kennel but are needed for pedigree mapping.
- **Champion Tracking**: Toggle the **Champion** status to title dogs. Offspring will automatically display the "Champion Bloodline" badge.
- **Photo Management**: Multiple high-quality photos per dog with a compact gallery view.
- **Litter Tracking**: Link puppies to breeding records automatically to track weight and health from birth.
## 🧬 Breeding & Genetics
- **Interactive Pedigree**: 5-generation trees with zoom/pan. Toggle the **Reverse Pedigree** switch to see descendant lineage.
- **Trial Pairing Simulator**: Calculate Wright's Inbreeding Coefficient (COI) instantly. Identifies common ancestors and providing risk badges (Low/Moderate/High).
- **Heat Cycles**: Track female cycles on the calendar. Includes **projected whelping alerts** (indigo windows) and expected due dates.
- **Health Records**: OFA clearances (hip, elbow, patella, heart, eyes, thyroid), GRCA/CHIC clearance summaries, vaccinations, exams, surgeries, and medications — with supporting-document upload.
- **DNA Panel**: Golden Retriever genetic markers (PRA, ICH, NCL, DM, MD) with carrier-risk checks on trial pairings.
---
## 🛠️ Technology Stack
- **Frontend**: React 18, Vite, Lucide Icons
- **Visualization**: React-D3-Tree, D3.js
- **Backend**: Node.js, Express.js
- **Database**: SQLite (Zero-config, safe `ALTER TABLE` migrations)
- **Deployment**: Multi-stage Docker
---
## 📂 Project Structure
```
breedr/
├── client/ # React frontend (Pages: Pedigree, Pairing, Calendar, Settings)
├── server/ # Node.js backend (Routes: Dogs, Pedigree, Breeding, Settings)
├── static/ # Branded assets (logos, etc.)
├── data/ # SQLite database storage (mapped in Docker)
├── uploads/ # Dog photo storage (mapped in Docker)
└── docs/ # Technical documentation and design history
```
---
## 🕒 Release Summary
- **v0.8.1** (Jul 2026): Fresh-install schema fix, health record overhaul, toast/dialog UX layer, API hardening, mobile responsiveness.
- **v0.8.0** (Mar 2026): Reverse Pedigree & External dog parentage.
- **v0.7.0**: Health & Genetics (OFA clearances, DNA panels, cancer history).
- **v0.6.1**: COI calculation fix for direct parent×offspring relations.
- **v0.6.0**: Champion status tracking & Kennel settings API.
---
## ❓ Troubleshooting
- **COI shows 0.00%?**: Ensure both parents are mapped and have shared ancestors.
- **Missing Columns?**: Restart the server; auto-init guards add columns automatically.
- **Logo not appearing?**: Place `br-logo.png` in the `static/` directory.
---
**Full Documentation**:
[Installation Guide](INSTALL.md) | [Development & Architecture](DEVELOPMENT.md) | [API Reference](API.md) | [Roadmap](ROADMAP.md)