- Add AUTONOMOUS-NEXT-TASKS.md (tasks for next agent execution)
- Add cloud session prompt documents (1-4)
- Add GITHUB_READINESS_REPORT.md (deployment status)
- Add GIT_STATE_REPORT.md (git state verification)
- Add feature-selector-complete.html (demo UI)
- Add demo-data/ directory (sample data for demo)
- Add .github/ workflows (CI/CD configuration)
Ready for cloud session launch.
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
4.4 KiB
Cloud Session 1: Photo Inventory System
Session ID: CLOUD-1-PHOTO-INVENTORY Timeline: 90 minutes Deadline: 4 hours from now (Riviera Plaisance presentation) Target: Build boat photo gallery + inventory tagging system
Your Mission
Add sticky daily-use photo management to NaviDocs MVP. Boat owners should be able to:
- Upload boat photos (exterior, interior, systems)
- Tag photos by system (engine, electrical, hull, interior)
- Search photos by tag
- View inventory checklist with photo evidence
- Export photo inventory for insurance/resale documentation
This solves the "€15K-€50K forgotten value" problem - owners can't remember what upgrades they have until resale.
Quick Start
-
Clone repo:
git clone https://github.com/dannystocker/navidocs.git && cd navidocs -
Read your brief:
cat /home/setup/navidocs/CLOUD_SESSION_1_MARKET_RESEARCH.md | head -80 -
Check current blockers:
cat /home/setup/navidocs/SESSION_DEBUG_BLOCKERS.md -
Review codebase structure:
- Frontend:
/src/app/(Next.js 14 with App Router) - API:
/src/api/(Prisma + Meilisearch) - Database:
schema.prisma(13 tables, photos table ready) - Components:
/src/components/(Tailwind + shadcn/ui)
- Frontend:
Your Task List
- Design: Photo upload UI component (drag-drop, multi-select)
- Database: Extend
PhotoInventorytable with tags (engine, electrical, hull, interior, etc.) - API: Create 3 endpoints:
POST /api/photos/upload- Store with system tagsGET /api/photos/by-tag/:tag- Filter by system typeGET /api/photos/inventory-list- Full inventory with photo count
- Frontend: Photo gallery grid component with tag filtering
- Search Integration: Add photo metadata to Meilisearch index
- Git commit:
[AGENT-1] Add photo inventory system with tag filtering - Create issue:
[AGENT-1] DEPLOY-READY: Photo Inventory Systemwith:- Screenshots of photo upload & gallery
- API test results
- Estimated storage impact
- Deployment steps for StackCP
Technical Context
Stack:
- Frontend: Next.js 14 (App Router)
- API: Node.js + Prisma ORM
- Database: PostgreSQL (17 tables)
- Search: Meilisearch (already integrated)
- Storage: StackCP filesystem (
/public/uploads/photos/) - UI: Tailwind CSS + shadcn/ui components
Key Files to Modify:
prisma/schema.prisma- Add photo tagssrc/app/api/photos/route.ts- Create upload endpointssrc/components/PhotoGallery.tsx- Create gallery UIsrc/app/inventory/photos/page.tsx- Photo inventory page
Design Specs:
- Photo upload max: 5MB per image (JPEG/PNG)
- Supported tags: engine, electrical, hull, interior, deck, safety, upgrade, other
- Gallery: 3-column grid (desktop), 2-column (tablet), 1-column (mobile)
- Tag filter: Multi-select with counts (e.g., "Engine (12)")
Critical Notes
- Demo Focus: Owners see boat photos + auto-populated inventory list with photo evidence
- Sticky Engagement: "Check boat photos while away" = daily app habit
- Insurance Value: Photo timestamped inventory = proof of ownership/upgrades
- Resale Value: Export photo manifest to potential buyers
- Must work offline: Photos should load from cache for remote boats
GitHub Access
- Repo: https://github.com/dannystocker/navidocs
- Branch:
feature/photo-inventory(create from main) - Base for PR: main branch
- Code review: Not required (direct commit to feature branch)
Success Criteria
✅ Photo upload working (multi-select, drag-drop) ✅ Photos visible in gallery with tags ✅ Search filters by tag return correct results ✅ API endpoints return correct JSON ✅ No console errors in browser/server ✅ Component responsive on mobile/tablet/desktop ✅ Git commit with [AGENT-1] tag
If Blocked
- Check
/home/setup/navidocs/SESSION_DEBUG_BLOCKERS.mdfor known issues - Verify PostgreSQL connection:
echo "SELECT version()" | psql - Verify Meilisearch running:
curl http://localhost:7700/health - Review existing photos API:
grep -r "POST /api/photos" src/ - Create issue:
[AGENT-1] BLOCKER: [description]
Questions?
Read these files for context:
ARCHITECTURE-SUMMARY.md- System designBUILD_COMPLETE.md- What's already workingDEMO-GUIDE.md- Feature showcase guide