Initial commit: Project README

This commit is contained in:
2026-03-08 22:41:39 -05:00
commit a195188832

142
README.md Normal file
View File

@@ -0,0 +1,142 @@
# BREEDR - Dog Breeding Genealogy Management System
A reactive, interactive dog breeding genealogy mapping system for professional kennel management.
## 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
## Technology Stack
- **Frontend**: React 18 with TypeScript
- **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
## Installation (Unraid)
### Build the Docker Image
1. Clone the repository:
```bash
cd /mnt/user/appdata/breedr-build
git clone https://git.alwisp.com/jason/breedr.git .
```
2. Build the Docker image:
```bash
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
```bash
# 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/
│ ├── models/
│ ├── db/
│ └── index.js
├── 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
## Roadmap
### ✅ Phase 1: Foundation (Current)
- [x] Project structure
- [x] Docker containerization
- [x] Database schema
- [x] Basic API endpoints
### 🚧 Phase 2: Core Features
- [ ] Dog profile management (CRUD)
- [ ] Interactive pedigree visualization
- [ ] Parent-child relationship mapping
- [ ] Basic photo uploads
### 📋 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
## License
Private use only - All rights reserved
## Support
For issues or questions, contact the system administrator.