6c82958c79
- Implement React frontend with TypeScript and Tailwind CSS - Add scrappbook.de-inspired UI design with photo galleries - Implement authentication, photo viewing, and download features - Add Docker Swarm configuration with Traefik reverse proxy - Set up Drone CI/CD pipeline for automated deployments - Add monitoring stack with Prometheus and Grafana - Create comprehensive deployment documentation - Add simple local development setup with docker-compose.local.yml Features: - Password-protected galleries with expiration warnings - Responsive photo grid with lightbox viewer - Bulk download functionality - Hot reload development environment - Email testing with Mailhog - Production-ready deployment scripts 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2.8 KiB
2.8 KiB
🚀 Quick Local Development Setup
Get the photo sharing platform running locally in under 2 minutes!
Prerequisites
- Docker Desktop installed and running
- Git
- 4GB RAM available
Quick Start
# 1. Clone the repository
git clone <your-repo-url>
cd wedding-photo-sharing
# 2. Start everything
./start-local.sh
That's it! 🎉
What You Get
| Service | URL | Description |
|---|---|---|
| Frontend (Dev) | http://localhost:3002 | React app with hot reload |
| Frontend (Prod) | http://localhost:3000 | Production build |
| Backend API | http://localhost:3001 | Express API |
| Mailhog | http://localhost:8025 | Email testing UI |
Default Credentials
- Admin Login: admin / admin123
- Test Gallery:
- Create via Admin Panel
- Password: test123
Common Tasks
View Logs
docker-compose -f docker-compose.local.yml logs -f
Stop Everything
./stop-local.sh
Reset Database
docker-compose -f docker-compose.local.yml exec backend npm run migrate
Add Test Photos
- Create a gallery in the admin panel
- Get the gallery slug (e.g.,
wedding-smith-2024) - Add photos to:
./storage/events/active/wedding-smith-2024/ - Photos appear automatically!
Access Backend Shell
docker-compose -f docker-compose.local.yml exec backend sh
Development Workflow
-
Frontend Development (Port 3002)
- Hot reload enabled
- Edit files in
./frontend/src - Changes appear instantly
-
Backend Development (Port 3001)
- Nodemon watches for changes
- Edit files in
./backend/src - Server restarts automatically
-
Email Testing
- All emails go to Mailhog
- View at http://localhost:8025
- No real emails sent!
Troubleshooting
Backend won't start
# Check logs
docker-compose -f docker-compose.local.yml logs backend
# Rebuild
docker-compose -f docker-compose.local.yml build backend
Frontend build issues
# Clear cache and rebuild
docker-compose -f docker-compose.local.yml exec frontend-dev npm run build
Port conflicts
Edit docker-compose.local.yml and change the port mappings:
- Backend: Change
3001:3000toXXXX:3000 - Frontend: Change
3002:5173toYYYY:5173
Reset everything
# Stop and remove all data
docker-compose -f docker-compose.local.yml down -v
rm -rf data storage logs
./start-local.sh
Tips
- 📧 Check Mailhog for all emails
- 🔄 Frontend auto-refreshes on save
- 📁 SQLite DB at
./data/photo_sharing.db - 🖼️ Photos in
./storage/events/active/ - 📝 Logs in
./logs/
Next Steps
- Create your first gallery via Admin Panel
- Upload some test photos
- Test the gallery with password
- Check expiration warnings
- View emails in Mailhog
Happy coding! 🎨