Files
band-management/Makefile

72 lines
2.6 KiB
Makefile

.PHONY: help services services-stop api admin band customers
# Colors
GREEN := \033[0;32m
YELLOW := \033[0;33m
CYAN := \033[0;36m
NC := \033[0m
help:
@echo ""
@echo "$(GREEN)╔══════════════════════════════════════════════════════════════╗$(NC)"
@echo "$(GREEN)║ BAND MANAGEMENT - Development Commands ║$(NC)"
@echo "$(GREEN)╚══════════════════════════════════════════════════════════════╝$(NC)"
@echo ""
@echo " $(YELLOW)Services (Docker):$(NC)"
@echo " make services Start MySQL, Redis, Mailpit"
@echo " make services-stop Stop all Docker services"
@echo ""
@echo " $(YELLOW)Development Servers:$(NC)"
@echo " make api Laravel API → http://localhost:8000"
@echo " make admin Admin Dashboard → http://localhost:5173"
@echo " make band Band Portal → http://localhost:5174"
@echo " make customers Customer Portal → http://localhost:5175"
@echo ""
@echo " $(YELLOW)Database:$(NC)"
@echo " make migrate Run migrations"
@echo " make fresh Fresh migrate + seed"
@echo " make db-shell Open MySQL shell"
@echo ""
services:
@echo "$(GREEN)Starting Docker services...$(NC)"
@docker compose up -d
@echo ""
@echo "$(GREEN)Services:$(NC)"
@echo " $(CYAN)MySQL:$(NC) localhost:3306 (band_management / secret)"
@echo " $(CYAN)Redis:$(NC) localhost:6379"
@echo " $(CYAN)Mailpit:$(NC) http://localhost:8025"
@echo ""
@echo "$(YELLOW)Waiting for MySQL...$(NC)"
@until docker exec bm_mysql mysqladmin ping -h localhost -u root -proot --silent 2>/dev/null; do sleep 1; done
@echo "$(GREEN)✓ Ready!$(NC)"
services-stop:
@docker compose down
@echo "$(GREEN)✓ Services stopped$(NC)"
api:
@echo "$(GREEN)Starting Laravel API → http://localhost:8000$(NC)"
@cd api && php artisan serve
admin:
@echo "$(GREEN)Starting Admin SPA → http://localhost:5173$(NC)"
@cd apps/admin && pnpm dev
band:
@echo "$(GREEN)Starting Band Portal → http://localhost:5174$(NC)"
@cd apps/band && pnpm dev --port 5174
customers:
@echo "$(GREEN)Starting Customer Portal → http://localhost:5175$(NC)"
@cd apps/customers && pnpm dev --port 5175
migrate:
@cd api && php artisan migrate
fresh:
@cd api && php artisan migrate:fresh --seed
db-shell:
@docker exec -it bm_mysql mysql -u band_management -psecret band_management