commit a1951888329d3fb98d21cbca2f665de7ebdc5f98 Author: jason Date: Sun Mar 8 22:41:39 2026 -0500 Initial commit: Project README diff --git a/README.md b/README.md new file mode 100644 index 0000000..8e3eac0 --- /dev/null +++ b/README.md @@ -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. \ No newline at end of file