.PHONY: install dev prod stop logs remove auth

COMPOSE = docker compose

auth:
	@mkdir -p .claude-data storage
	@cp -aT /root/.claude .claude-data
	@chown -R 1000:1000 .claude-data storage
	@echo "Claude-Auth nach .claude-data synct, storage chowned auf uid 1000."

install:
	sudo apt install -y poppler-utils libpango-1.0-0 libcairo2 libgdk-pixbuf-2.0-0 libffi-dev
	pip install --break-system-packages fastapi uvicorn[standard] aiosqlite weasyprint pdf2image
	cd frontend && npm install

dev:
	@echo "Backend: http://localhost:8000"
	@echo "Frontend: http://localhost:5173"
	@cd backend && uvicorn main:app --reload --port 8000 &
	@cd frontend && npx vite --port 5173

prod: auth
	$(COMPOSE) up -d --build

stop:
	-@pkill -f "uvicorn main:app" 2>/dev/null
	-@pkill -f "vite --port 5173" 2>/dev/null
	$(COMPOSE) down
	@echo "Server gestoppt."

logs:
	$(COMPOSE) logs -f

remove: stop
	@echo "Lösche Datenbank und generierte Dateien..."
	rm -rf storage/*
	@echo "Fertig."
