#!/bin/bash # E-Voting System - Frontend Development Mode Helper # This script helps run the Next.js frontend in development mode with detailed logging set -e case "${1:-help}" in start) echo "🚀 Starting frontend in DEVELOPMENT mode with full logging..." echo "" echo "Features:" echo " ✓ Hot reload on file changes" echo " ✓ Detailed browser console logs" echo " ✓ Server-side render logs" echo " ✓ API request/response logs" echo "" # Stop the production frontend if running if docker compose ps | grep -q "evoting_frontend"; then echo "Stopping production frontend..." docker compose stop frontend fi # Start dev frontend with other services echo "Starting all services..." docker compose -f docker-compose.yml -f docker-compose.dev.yml up frontend-dev ;; stop) echo "âšī¸ Stopping frontend development mode..." docker compose -f docker-compose.yml -f docker-compose.dev.yml down ;; logs) echo "📋 Showing frontend development logs (streaming)..." echo "" docker compose -f docker-compose.yml -f docker-compose.dev.yml logs -f frontend-dev ;; logs-all) echo "📋 Showing all services logs..." echo "" docker compose logs -f ;; rebuild) echo "🔨 Rebuilding frontend dev image..." docker compose -f docker-compose.yml -f docker-compose.dev.yml build --no-cache frontend-dev ;; shell) echo "🐚 Opening shell in frontend dev container..." docker compose -f docker-compose.yml -f docker-compose.dev.yml exec frontend-dev sh ;; status) echo "📊 Frontend development status:" echo "" docker compose -f docker-compose.yml -f docker-compose.dev.yml ps frontend-dev ;; *) echo "E-Voting System - Frontend Development Mode Helper" echo "" echo "Usage: ./dev-mode.sh [command]" echo "" echo "Commands:" echo " start - Start frontend in development mode with hot reload" echo " stop - Stop development mode" echo " logs - Show frontend logs (streaming)" echo " logs-all - Show all services logs" echo " rebuild - Rebuild frontend dev image" echo " shell - Open shell in dev container" echo " status - Show development container status" echo "" echo "Examples:" echo " ./dev-mode.sh start # Start dev mode" echo " ./dev-mode.sh logs # Stream logs" echo " ./dev-mode.sh logs-all # All services" echo "" ;; esac