This project is an AI-powered subtitle generator with a Next.js frontend and Node.js backend.
This project uses Docker Compose to set up the development environment. This includes:
- Backend server (Node.js with Express)
- Frontend client (Next.js)
- Redis for caching
- Docker and Docker Compose installed
- Google Cloud credentials file (for Vertex AI)
-
Update the environment variables
Edit the
.envfile in the root directory with your Appwrite and Google Cloud credentials. -
Add your Google Cloud credentials
Place your Google Cloud credentials JSON file at
server/credentials.json. -
Start the services
docker-compose up
This will start all services defined in the docker-compose.yml file.
-
Access the applications
- Frontend: http://localhost:3000
- Backend API: http://localhost:3001
- Backend Health Check: http://localhost:3001/health
- The source code is mounted as volumes, so changes will be reflected immediately.
- Both frontend and backend use hot-reloading for development.
docker-compose downTo remove volumes as well:
docker-compose down -vIf you're experiencing Redis connection issues, make sure:
- The Redis service is running:
docker-compose ps - The backend service is configured to connect to Redis using the service name:
REDIS_HOST=redis
To view logs for a specific service:
docker-compose logs -f server # For backend logs
docker-compose logs -f client # For frontend logs
docker-compose logs -f redis # For Redis logs