diff --git a/apps/web/package.json b/apps/web/package.json index 807bbd4..7d13908 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -5,6 +5,7 @@ "description": "Technical problem solver's blog - practical insights and learning notes", "scripts": { "dev": "pnpm run seed:context && next dev --turbo", + "dev:native": "pnpm run seed:context && DATABASE_URI=postgres://directus:directus@127.0.0.1:54321/directus PAYLOAD_SECRET=dev-secret next dev --webpack", "seed:context": "tsx ./seed-context.ts", "build": "next build --webpack", "start": "next start", diff --git a/apps/web/sentry.edge.config.ts b/apps/web/sentry.edge.config.ts index 64b5c1b..ea9b230 100644 --- a/apps/web/sentry.edge.config.ts +++ b/apps/web/sentry.edge.config.ts @@ -1,10 +1,11 @@ import * as Sentry from "@sentry/nextjs"; const dsn = process.env.SENTRY_DSN; +const isProd = process.env.NODE_ENV === "production"; Sentry.init({ dsn, - enabled: Boolean(dsn), + enabled: isProd && Boolean(dsn), tracesSampleRate: 1, debug: false, }); diff --git a/apps/web/sentry.server.config.ts b/apps/web/sentry.server.config.ts index 73411cb..38517d2 100644 --- a/apps/web/sentry.server.config.ts +++ b/apps/web/sentry.server.config.ts @@ -1,10 +1,11 @@ import * as Sentry from "@sentry/nextjs"; const dsn = process.env.SENTRY_DSN; +const isProd = process.env.NODE_ENV === "production"; Sentry.init({ dsn, - enabled: Boolean(dsn), + enabled: isProd && Boolean(dsn), tracesSampleRate: 1, debug: false, diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml index e940461..2318efc 100644 --- a/docker-compose.dev.yml +++ b/docker-compose.dev.yml @@ -1,4 +1,16 @@ services: + # Lightweight proxy: gives Caddy the labels to route mintel.localhost → host Mac + proxy: + image: alpine:latest + command: sleep infinity + restart: unless-stopped + networks: + - infra + labels: + - "caddy=http://${TRAEFIK_HOST:-mintel.localhost}" + - "caddy.reverse_proxy=host.docker.internal:3000" + + # Full Docker dev (use with `pnpm run dev:docker`) app: build: context: . @@ -41,9 +53,10 @@ services: POSTGRES_DB: ${postgres_DB_NAME:-directus} POSTGRES_USER: ${postgres_DB_USER:-directus} POSTGRES_PASSWORD: ${postgres_DB_PASSWORD:-directus} - volumes: - directus-db-data:/var/lib/postgresql/data + ports: + - "54321:5432" networks: default: diff --git a/package.json b/package.json index a6fdfed..d73010e 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,8 @@ "type": "module", "packageManager": "pnpm@10.18.3", "scripts": { - "dev": "docker network create infra 2>/dev/null || true && echo \"\\nšŸš€ Dockerized Environment Starting...\\n\\nšŸ“± App: http://mintel.localhost\\n🚦 Caddy Proxy: http://localhost:80\\n\" && COMPOSE_PROJECT_NAME=mintel-me docker-compose -f docker-compose.dev.yml up app postgres-db", + "dev": "COMPOSE_PROJECT_NAME=mintel-me docker-compose -f docker-compose.dev.yml up -d postgres-db proxy && NODE_ENV=development pnpm --filter @mintel/web dev:native", + "dev:docker": "docker network create infra 2>/dev/null || true && echo \"\\nšŸš€ Dockerized Environment Starting...\\n\\nšŸ“± App: http://mintel.localhost\\n🚦 Caddy Proxy: http://localhost:80\\n\" && COMPOSE_PROJECT_NAME=mintel-me docker-compose -f docker-compose.dev.yml up app postgres-db", "dev:clean": "pnpm dev:stop && rm -rf apps/web/.next apps/web/node_modules && pnpm install && pnpm dev", "dev:stop": "COMPOSE_PROJECT_NAME=mintel-me docker-compose -f docker-compose.dev.yml down", "dev:local": "pnpm -r dev",