commit 617057727d203184cf2c17d4262bf5f8d0766b48 Author: caadiq Date: Wed Dec 31 21:44:40 2025 +0900 ๐ŸŽ‰ Initial commit - ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ ๋ฐ Docker ์„ค์ • diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d380c5e --- /dev/null +++ b/.gitignore @@ -0,0 +1,26 @@ +# Dependencies +node_modules/ + +# Build output +dist/ +build/ + +# Environment variables +.env +.env.local +.env.*.local + +# IDE +.vscode/ +.idea/ + +# OS +.DS_Store +Thumbs.db + +# Logs +*.log +npm-debug.log* + +# Cache +.cache/ diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..49726a2 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,24 @@ +# ๋นŒ๋“œ ์Šคํ…Œ์ด์ง€ - ํ”„๋ก ํŠธ์—”๋“œ ๋นŒ๋“œ +FROM node:20-alpine AS frontend-builder +WORKDIR /frontend +COPY frontend/package*.json ./ +RUN npm install +COPY frontend/ ./ +RUN npm run build + +# ํ”„๋กœ๋•์…˜ ์Šคํ…Œ์ด์ง€ +FROM node:20-alpine +WORKDIR /app + +# ๋ฐฑ์—”๋“œ ์˜์กด์„ฑ ์„ค์น˜ +COPY backend/package*.json ./ +RUN npm install --production + +# ๋ฐฑ์—”๋“œ ํŒŒ์ผ ๋ณต์‚ฌ +COPY backend/ ./ + +# ํ”„๋ก ํŠธ์—”๋“œ ๋นŒ๋“œ ๊ฒฐ๊ณผ๋ฌผ ๋ณต์‚ฌ +COPY --from=frontend-builder /frontend/dist ./dist + +EXPOSE 80 +CMD ["node", "server.js"] diff --git a/README.md b/README.md new file mode 100644 index 0000000..aad7f6b --- /dev/null +++ b/README.md @@ -0,0 +1,20 @@ +# fromis_9 Fan Site + +ํ”„๋กœ๋ฏธ์Šค๋‚˜์ธ ํŒฌ์‚ฌ์ดํŠธ์ž…๋‹ˆ๋‹ค. + +## ๊ธฐ์ˆ  ์Šคํƒ + +- **Frontend**: React 18 + Vite + TailwindCSS +- **Backend**: Express.js (Node 20) +- **Database**: MariaDB +- **Container**: Docker Compose + +## ์‹คํ–‰ ๋ฐฉ๋ฒ• + +```bash +docker-compose up -d --build +``` + +## ๋„๋ฉ”์ธ + +- https://fromis9.caadiq.co.kr diff --git a/backend/package.json b/backend/package.json new file mode 100644 index 0000000..6f49576 --- /dev/null +++ b/backend/package.json @@ -0,0 +1,13 @@ +{ + "name": "fromis9-backend", + "private": true, + "version": "1.0.0", + "type": "module", + "scripts": { + "start": "node server.js" + }, + "dependencies": { + "express": "^4.18.2", + "mysql2": "^3.11.0" + } +} \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..cd0cb03 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,16 @@ +services: + fromis9-web: + build: . + container_name: fromis9-web + env_file: + - .env + networks: + - app + - db + restart: unless-stopped + +networks: + app: + external: true + db: + external: true diff --git a/frontend/package.json b/frontend/package.json new file mode 100644 index 0000000..21f9b27 --- /dev/null +++ b/frontend/package.json @@ -0,0 +1,28 @@ +{ + "name": "fromis9-frontend", + "private": true, + "version": "1.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview" + }, + "dependencies": { + "framer-motion": "^11.0.8", + "lucide-react": "^0.344.0", + "react": "^18.2.0", + "react-device-detect": "^2.2.3", + "react-dom": "^18.2.0", + "react-router-dom": "^6.22.3" + }, + "devDependencies": { + "@types/react": "^18.3.3", + "@types/react-dom": "^18.3.0", + "@vitejs/plugin-react": "^4.3.1", + "autoprefixer": "^10.4.22", + "postcss": "^8.5.6", + "tailwindcss": "^3.4.18", + "vite": "^5.4.1" + } +} \ No newline at end of file