a06ddf0435
Build and Push Docker Image / build (push) Successful in 16s
- 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>
94 lines
4.3 KiB
Markdown
94 lines
4.3 KiB
Markdown
# 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 18–24).
|
||
```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)
|