From cdb4436d96a7eda0fd758ee92a8789d0bb306e4d Mon Sep 17 00:00:00 2001 From: soohyunme Date: Fri, 20 Feb 2026 02:15:47 +0900 Subject: [PATCH 1/2] feat: add light mode support, optimize assets, and mock server logging - Convert member photos and logos to WebP format for better performance - Add CSS for light mode support and refine footer UI - Disable database dependency in server and implement mock visit stats - Update Vite config to allow all hosts --- platform/docker-compose.dev.yml | 35 +- platform/docker-compose.yml | 50 +- platform/frontend/history/index.html | 80 +++- platform/frontend/index.html | 96 ++-- platform/frontend/main.js | 125 +++-- .../activity_tech_booth_placeholder.png | Bin 705874 -> 0 bytes platform/frontend/public/brand_logo.png | Bin 21598 -> 0 bytes platform/frontend/public/brand_logo.webp | Bin 0 -> 7394 bytes platform/frontend/public/favicon.png | Bin 7346 -> 0 bytes platform/frontend/public/favicon.webp | Bin 0 -> 3502 bytes .../frontend/public/logo + text dark 1.png | Bin 0 -> 7105 bytes .../frontend/public/logo + text dark 2.png | Bin 0 -> 32181 bytes platform/frontend/public/logo_dark.webp | Bin 0 -> 1674 bytes platform/frontend/public/logo_light.webp | Bin 0 -> 7394 bytes .../frontend/public/logo_symbol_dark.webp | Bin 0 -> 5134 bytes .../frontend/public/logo_symbol_light.webp | Bin 0 -> 6616 bytes platform/frontend/public/members/seungkyu.jpg | Bin 22365 -> 0 bytes .../frontend/public/members/seungkyu.webp | Bin 0 -> 14282 bytes platform/frontend/public/members/soohyun.png | Bin 2183987 -> 0 bytes platform/frontend/public/members/soohyun.webp | Bin 0 -> 1066862 bytes platform/frontend/public/members/yesin.jpg | Bin 1626533 -> 0 bytes platform/frontend/public/members/yesin.webp | Bin 0 -> 419384 bytes platform/frontend/public/members/yujin.jpg | Bin 1393500 -> 0 bytes platform/frontend/public/members/yujin.webp | Bin 0 -> 338668 bytes platform/frontend/public/pl_symbol.png | Bin 7346 -> 0 bytes platform/frontend/public/pl_symbol.webp | Bin 0 -> 3502 bytes platform/frontend/public/pl_symbol_white.png | Bin 19757 -> 0 bytes platform/frontend/public/pl_symbol_white.webp | Bin 0 -> 6616 bytes .../public/pseudo lab logo - symbol dark.svg | 3 + .../pseudo lab logo - symbol-1 dark.png | Bin 0 -> 11537 bytes .../pseudo lab logo - symbol-2 dark.png | Bin 0 -> 64829 bytes platform/frontend/style.css | 449 ++++++++++++++++-- platform/frontend/vite.config.js | 4 +- platform/server/src/index.js | 12 +- 34 files changed, 671 insertions(+), 183 deletions(-) delete mode 100644 platform/frontend/public/activity_tech_booth_placeholder.png delete mode 100644 platform/frontend/public/brand_logo.png create mode 100644 platform/frontend/public/brand_logo.webp delete mode 100644 platform/frontend/public/favicon.png create mode 100644 platform/frontend/public/favicon.webp create mode 100644 platform/frontend/public/logo + text dark 1.png create mode 100644 platform/frontend/public/logo + text dark 2.png create mode 100644 platform/frontend/public/logo_dark.webp create mode 100644 platform/frontend/public/logo_light.webp create mode 100644 platform/frontend/public/logo_symbol_dark.webp create mode 100644 platform/frontend/public/logo_symbol_light.webp delete mode 100644 platform/frontend/public/members/seungkyu.jpg create mode 100644 platform/frontend/public/members/seungkyu.webp delete mode 100644 platform/frontend/public/members/soohyun.png create mode 100644 platform/frontend/public/members/soohyun.webp delete mode 100644 platform/frontend/public/members/yesin.jpg create mode 100644 platform/frontend/public/members/yesin.webp delete mode 100644 platform/frontend/public/members/yujin.jpg create mode 100644 platform/frontend/public/members/yujin.webp delete mode 100644 platform/frontend/public/pl_symbol.png create mode 100644 platform/frontend/public/pl_symbol.webp delete mode 100644 platform/frontend/public/pl_symbol_white.png create mode 100644 platform/frontend/public/pl_symbol_white.webp create mode 100644 platform/frontend/public/pseudo lab logo - symbol dark.svg create mode 100644 platform/frontend/public/pseudo lab logo - symbol-1 dark.png create mode 100644 platform/frontend/public/pseudo lab logo - symbol-2 dark.png diff --git a/platform/docker-compose.dev.yml b/platform/docker-compose.dev.yml index 8213292..cb3bee3 100644 --- a/platform/docker-compose.dev.yml +++ b/platform/docker-compose.dev.yml @@ -1,43 +1,20 @@ services: - # Development Overrides with Traefik Support + # Development mode (Hot-Reloading) frontend: build: context: ./frontend target: build-stage - image: devfactory-frontend:dev - command: npm run dev -- --host 0.0.0.0 + command: npm run dev -- --host 0.0.0.0 --port 80 volumes: - ./frontend:/app - /app/node_modules - labels: - - traefik.enable=true - - traefik.docker.network=traefik - - traefik.http.routers.df-platform-web.rule=Host(`${APP_HOST}`) - - traefik.http.routers.df-platform-web.entrypoints=websecure - - traefik.http.routers.df-platform-web.tls=true - - traefik.http.routers.df-platform-web.tls.certresolver=le - - traefik.http.services.df-platform-web.loadbalancer.server.port=5173 - # HTTP → HTTPS redirect (re-adding to ensure full functionality) - - traefik.http.routers.df-platform-web-http.rule=Host(`${APP_HOST}`) - - traefik.http.routers.df-platform-web-http.entrypoints=web - - traefik.http.routers.df-platform-web-http.middlewares=redirect-to-https@file - - traefik.http.routers.df-platform-web-http.service=df-platform-web + ports: + - "8081:80" server: command: npm run dev volumes: - ./server:/app - /app/node_modules - labels: - - traefik.enable=true - - traefik.docker.network=traefik - - traefik.http.routers.df-platform-api.rule=Host(`${APP_HOST}`) && PathPrefix(`/api`) - - traefik.http.routers.df-platform-api.entrypoints=websecure - - traefik.http.routers.df-platform-api.tls=true - - traefik.http.routers.df-platform-api.tls.certresolver=le - - traefik.http.services.df-platform-api.loadbalancer.server.port=3000 - # HTTP → HTTPS redirect - - traefik.http.routers.df-platform-api-http.rule=Host(`${APP_HOST}`) && PathPrefix(`/api`) - - traefik.http.routers.df-platform-api-http.entrypoints=web - - traefik.http.routers.df-platform-api-http.middlewares=redirect-to-https@file - - traefik.http.routers.df-platform-api-http.service=df-platform-api + ports: + - "3000:3000" diff --git a/platform/docker-compose.yml b/platform/docker-compose.yml index ab83126..3601198 100644 --- a/platform/docker-compose.yml +++ b/platform/docker-compose.yml @@ -3,60 +3,22 @@ services: frontend: build: context: ./frontend - labels: - - "org.pseudolab.project=devfactory-platform" container_name: devfactory-frontend restart: unless-stopped - networks: - - traefik - - internal - labels: - - traefik.enable=true - - traefik.docker.network=traefik - # --- Traefik Router (frontend) --- - - traefik.http.routers.df-platform-web.rule=Host(`${APP_HOST}`) - - traefik.http.routers.df-platform-web.entrypoints=websecure - - traefik.http.routers.df-platform-web.tls=true - - traefik.http.routers.df-platform-web.tls.certresolver=le - - traefik.http.services.df-platform-web.loadbalancer.server.port=80 - # HTTP → HTTPS redirect - - traefik.http.routers.df-platform-web-http.rule=Host(`${APP_HOST}`) - - traefik.http.routers.df-platform-web-http.entrypoints=web - - traefik.http.routers.df-platform-web-http.middlewares=redirect-to-https@file - - traefik.http.routers.df-platform-web-http.service=df-platform-web + ports: + - "8081:80" # Caddy가 8081로 접속하도록 설정 + depends_on: + - server # Backend API server server: build: context: ./server - labels: - - "org.pseudolab.project=devfactory-platform" container_name: devfactory-api restart: unless-stopped environment: - DATABASE_URL=${DATABASE_URL} - ACCESS_LOGGING_IP_SALT=${ACCESS_LOGGING_IP_SALT} - PORT=3000 - networks: - - traefik - - internal - labels: - - traefik.enable=true - - traefik.docker.network=traefik - # --- Traefik Router (backend) --- - - traefik.http.routers.df-platform-api.rule=Host(`${APP_HOST}`) && PathPrefix(`/api`) - - traefik.http.routers.df-platform-api.entrypoints=websecure - - traefik.http.routers.df-platform-api.tls=true - - traefik.http.routers.df-platform-api.tls.certresolver=le - - traefik.http.services.df-platform-api.loadbalancer.server.port=3000 - # HTTP → HTTPS redirect - - traefik.http.routers.df-platform-api-http.rule=Host(`${APP_HOST}`) && PathPrefix(`/api`) - - traefik.http.routers.df-platform-api-http.entrypoints=web - - traefik.http.routers.df-platform-api-http.middlewares=redirect-to-https@file - - traefik.http.routers.df-platform-api-http.service=df-platform-api - -networks: - traefik: - external: true - internal: - driver: bridge + ports: + - "3000:3000" diff --git a/platform/frontend/history/index.html b/platform/frontend/history/index.html index cfa7f6d..1207e16 100644 --- a/platform/frontend/history/index.html +++ b/platform/frontend/history/index.html @@ -5,7 +5,7 @@ DevFactory | Our Journey - + @@ -13,15 +13,39 @@
- + DevFactory +
+ + +
+ +
+ + +
+
@@ -133,11 +157,61 @@

6th PseudoCon

-