Merge pull request 'docs/update-readme-roadmap-v0.5' (#20) from docs/update-readme-roadmap-v0.5 into master
Some checks failed
Build & Publish Docker Image / build-and-push (push) Has been cancelled

Reviewed-on: #20
This commit was merged in pull request #20.
This commit is contained in:
2026-03-09 20:22:53 -05:00
2 changed files with 70 additions and 95 deletions

View File

@@ -12,6 +12,7 @@ A reactive, interactive dog breeding genealogy mapping system for professional k
- **✅ Interactive Pedigree Visualization** - Multi-generational family trees with zoom/pan
- **✅ Modern UI** - Sleek, dark-themed interface with compact info cards
- **✅ Search & Filter** - Find dogs by name, breed, sex, and more
- **✅ Branded Navigation** - Custom logo (br-logo.png) with gold-to-rusty-red gradient title
### Database Architecture
- **✅ Clean Schema** - No migrations, fresh installs create correct structure
@@ -21,7 +22,15 @@ A reactive, interactive dog breeding genealogy mapping system for professional k
- **✅ Heat Cycles** - Breeding cycle tracking
- **✅ Genetic Traits** - Inherited trait mapping
### Recently Fixed
### Recently Added (March 9, 2026)
- **✅ Brand Logo** - Custom `br-logo.png` in navbar replacing generic icon
- **✅ Gradient Title** - Gold-to-rusty-red gradient on "BREEDR" brand text
- **✅ Static Asset Serving** - `/static` directory served by Express for branding assets
- **✅ Dev Proxy** - Vite dev server proxies `/static` to Express backend
- **✅ Route Fix** - `/static` and `/uploads` paths no longer fall through to React catch-all
- **✅ Logo Sizing** - Fixed brand logo to 1:1 aspect ratio square
### Previously Fixed
- **✅ Database Schema** - Removed weight/height columns, added litter_id
- **✅ Parent Handling** - Proper sire/dam via parents table
- **✅ Microchip Field** - Optional, allows multiple dogs without microchips
@@ -35,7 +44,7 @@ A reactive, interactive dog breeding genealogy mapping system for professional k
- **Backend**: Node.js/Express API
- **Database**: SQLite (embedded, zero-config) with clean normalized schema
- **Container**: Single Docker image with multi-stage build
- **Styling**: CSS custom properties with dark theme
- **Styling**: CSS custom properties with dark theme + gradient branding
## Quick Start
@@ -72,7 +81,7 @@ cp data/breedr.db data/breedr.db.backup
rm data/breedr.db
# Pull latest code
git pull origin docs/clean-schema-and-roadmap-update
git pull origin master
# Rebuild and restart
docker-compose up -d --build
@@ -125,19 +134,20 @@ npm run build
```
breedr/
├── client/ # React frontend
├── client/ # React frontend
│ ├── src/
│ ├── public/
│ └── package.json
├── server/ # Node.js backend
├── server/ # Node.js backend
│ ├── routes/
│ ├── db/
│ │ └── init.js # Clean schema (NO migrations)
│ └── index.js
├── docs/ # Documentation
├── DATABASE.md # Schema documentation
├── ROADMAP.md # Development roadmap
├── Dockerfile # Multi-stage Docker build
├── static/ # Branding assets (br-logo.png, etc.)
├── docs/ # Documentation
├── DATABASE.md # Schema documentation
├── ROADMAP.md # Development roadmap
├── Dockerfile # Multi-stage Docker build
├── docker-compose.yml
└── README.md
```
@@ -151,6 +161,7 @@ breedr/
- `GET /api/pedigree/:id` - Generate pedigree tree
- `GET /api/health` - Health records
- `GET/POST /api/breeding` - Heat cycles and breeding
- `GET /static/*` - Branding and static assets
## Upgrading
@@ -196,6 +207,10 @@ Check server logs for:
If you don't see these logs, ensure `sire_id` and `dam_id` are being sent in the API request.
### Logo not appearing in navbar
Ensure `br-logo.png` is placed in the `static/` directory at the project root. The file is served at `/static/br-logo.png`.
## Roadmap
### ✅ Completed
@@ -208,6 +223,8 @@ If you don't see these logs, ensure `sire_id` and `dam_id` are being sent in the
- [x] Parent-child relationships via parents table
- [x] Modern UI redesign
- [x] Search and filtering
- [x] Custom brand logo + gradient title
- [x] Static asset serving
### 🚧 In Progress
- [ ] Trial pairing simulator
@@ -225,7 +242,15 @@ If you don't see these logs, ensure `sire_id` and `dam_id` are being sent in the
## Recent Updates
### March 9, 2026 - Clean Database Schema
### March 9, 2026 - Branding & Header Improvements (v0.4.1)
- **Added:** Custom `br-logo.png` brand logo in navbar
- **Added:** Gold-to-rusty-red gradient on "BREEDR" title text
- **Added:** `/static` directory for branding assets served by Express
- **Fixed:** Vite dev proxy for `/static` routes
- **Fixed:** `/static` and `/uploads` paths no longer fall through to React router
- **Fixed:** Brand logo sized as fixed 1:1 square for proper aspect ratio
### March 9, 2026 - Clean Database Schema (v0.4.0)
- **Fixed:** Database schema cleaned up - no migrations
- **Fixed:** Removed weight/height columns (never implemented)
- **Fixed:** Proper parent handling via parents table

View File

@@ -28,6 +28,7 @@
- [x] `/api/breeding` - Heat cycles and whelping calculator
- [x] Photo upload with Multer
- [x] **Parent relationship handling** via parents table
- [x] `/static/*` - Branding and static asset serving
---
@@ -53,6 +54,12 @@
- [x] Responsive navigation
- [x] **Compact info cards** (80x80 avatars)
- [x] **Modern dark theme** with glass morphism
- [x] **Custom brand logo** (br-logo.png) in navbar
- [x] **Gold-to-rusty-red gradient** on BREEDR brand title
- [x] **Static asset serving** via Express `/static` route
- [x] **Vite dev proxy** for `/static` routes
- [x] **Route fix** - static/uploads don't fall through to React router
- [x] **Logo aspect ratio** fixed to 1:1 square
### Features Implemented
- [x] Photo upload and storage
@@ -100,7 +107,7 @@
---
## 📊 Phase 4: Health & Genetics (PLANNED)
## 📋 Phase 4: Health & Genetics (PLANNED)
### Health Records
- [ ] Add health test results
@@ -117,7 +124,7 @@
---
## 📊 Phase 5: Advanced Features (PLANNED)
## 📋 Phase 5: Advanced Features (PLANNED)
### Pedigree Tools
- [ ] Reverse pedigree (descendants view)
@@ -144,7 +151,7 @@
---
## 📊 Phase 6: Polish & Optimization (PLANNED)
## 📋 Phase 6: Polish & Optimization (PLANNED)
### User Experience
- [ ] Loading states for all operations
@@ -202,87 +209,19 @@
---
## 🆕 Latest Release: v0.4.0 - Clean Database Schema
## 🌕 Current Sprint: v0.5.0
### What's New in This Release
### ✅ Completed This Sprint
- [x] Custom `br-logo.png` brand logo in navbar
- [x] Gold-to-rusty-red gradient on BREEDR title
- [x] `/static` directory served by Express
- [x] Vite dev proxy for `/static`
- [x] Fixed route fall-through for `/static` and `/uploads`
- [x] Brand logo fixed to 1:1 aspect ratio
#### Database Overhaul ✅
-**Clean schema design** - NO migrations, fresh init creates correct structure
-**Removed columns:** weight, height (never implemented)
-**Added litter_id** column to dogs table with foreign key
-**Parents table approach** - NO sire/dam columns in dogs table
-**Proper relationships** - Sire/dam stored in separate parents table
-**Database documentation** - Comprehensive DATABASE.md file
### 🚧 Next Up (Priority Order)
#### API Improvements
-**Fixed parent handling** - Properly inserts into parents table
-**Added logging** - See exactly what's happening during dog creation
-**Error handling** - Graceful fallbacks for missing data
-**Query optimization** - Select only existing columns
#### Server Improvements
-**Removed migrations** - Clean init.js is source of truth
-**Simplified startup** - Just calls initDatabase()
-**Better logging** - Clear console output with checkmarks
-**No schema detection** - Always uses correct structure
#### Documentation
-**DATABASE.md** - Complete schema reference
-**Updated README** - Current features and setup
-**Updated ROADMAP** - Accurate progress tracking
-**Troubleshooting guide** - Common issues and solutions
### Migration Instructions
For **fresh installs**, the database will initialize correctly automatically.
For **existing installations**, you need to start fresh:
```bash
# Backup your data
cp data/breedr.db data/breedr.db.backup
# Delete old database
rm data/breedr.db
# Pull latest code
git pull origin docs/clean-schema-and-roadmap-update
# Restart application (creates clean database)
docker-compose restart
```
**Note:** Parent relationship data cannot be automatically migrated due to schema change from columns to table. You'll need to re-enter parent relationships.
---
## Previous Releases
### v0.3.1 - UI Fixes & Error Handling
- Fixed blank screen issue on Add Dog modal
- Improved parent selection layout
- Added comprehensive error handling
- Enhanced visual design with proper spacing
### v0.3.0 - Litter Management & Interactive Pedigree
- Added litter_id to dogs table
- Implemented LitterForm component
- Created PedigreeView with React-D3-Tree
- Enhanced DogForm with dual parent selection
- Fixed "no such column: sire" error
- Added comprehensive documentation
### v0.2.0 - Dog CRUD operations complete
### v0.1.0 - Initial foundation with API and database
---
## Current Sprint Focus
### Next Up (Priority)
#### Option 1: Trial Pairing Simulator (Recommended) 🎯
#### Option 1: Trial Pairing Simulator (Recommended) 👍
**Complexity:** Medium | **Impact:** High | **User Value:** Excellent
**Why this is recommended:**
@@ -292,7 +231,7 @@ docker-compose restart
- Relatively quick to implement
**Tasks:**
- Create PairingSimulator component
- Create `PairingSimulator` component
- Add sire/dam selection dropdowns
- Display COI calculation results
- Show common ancestors table
@@ -312,7 +251,7 @@ docker-compose restart
- Provides calendar functionality
**Tasks:**
- Create HeatCycleForm component
- Create `HeatCycleForm` component
- Add calendar view with heat cycle tracking
- Track progesterone levels
- Implement breeding date suggestions
@@ -331,7 +270,7 @@ docker-compose restart
- Document management adds utility
**Tasks:**
- Create HealthRecordForm component
- Create `HealthRecordForm` component
- Add vaccination tracking with expiry alerts
- Medical history timeline view
- PDF/image document uploads
@@ -349,6 +288,9 @@ docker-compose restart
- [x] UI layout fixes
- [x] Error handling for API failures
- [x] Parent relationship creation via parents table
- [x] Brand logo display and sizing
- [x] Gradient title rendering
- [x] Static asset serving in prod and dev
- [ ] Trial pairing simulator
- [ ] Heat cycle tracking
- [ ] Health records
@@ -368,7 +310,15 @@ docker-compose restart
## Version History
- **v0.4.0** (Current - March 9, 2026) - Clean Database Schema
- **v0.4.1** (March 9, 2026) - Branding & Header Improvements
- Custom br-logo.png in navbar
- Gold-to-rusty-red gradient title
- Static asset serving via Express
- Vite dev proxy for /static
- Route fix for static/uploads paths
- Logo 1:1 aspect ratio fix
- **v0.4.0** (March 9, 2026) - Clean Database Schema
- Complete database overhaul with clean normalized design
- Removed migrations, fresh init only
- Parents table for relationships