From 7ac505da05835d96ddc30a927ac80068233b51f1 Mon Sep 17 00:00:00 2001 From: jason Date: Mon, 9 Mar 2026 20:19:46 -0500 Subject: [PATCH 1/2] docs: Update README with header/logo/branding changes and v0.5 next features --- README.md | 45 +++++++++++++++++++++++++++++++++++---------- 1 file changed, 35 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 65f49c1..8cf01a9 100644 --- a/README.md +++ b/README.md @@ -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 From 31613e384d292d6b47c670d17c50c6af200746f2 Mon Sep 17 00:00:00 2001 From: jason Date: Mon, 9 Mar 2026 20:20:43 -0500 Subject: [PATCH 2/2] docs: Update ROADMAP to reflect branding work complete, mark v0.5 sprint --- ROADMAP.md | 120 ++++++++++++++++------------------------------------- 1 file changed, 35 insertions(+), 85 deletions(-) diff --git a/ROADMAP.md b/ROADMAP.md index 4f5da4b..707f693 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -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