--- description: globs: alwaysApply: true --- # WACE 솔루션 - 프로젝트 개요 ## 프로젝트 정보 이 프로젝트는 WACE ERP/PLM 솔루션입니다. Node.js + Next.js 기반의 풀스택 웹 애플리케이션으로, 멀티테넌시를 지원합니다. ## 기술 스택 - **Backend**: Node.js 20+, Express 4, TypeScript - **Frontend**: Next.js (App Router, Turbopack), React, shadcn/ui, Tailwind CSS - **Database**: PostgreSQL (pg 드라이버 직접 사용) - **인증**: JWT (jsonwebtoken) - **빌드**: npm, TypeScript (tsc) - **개발도구**: nodemon (백엔드 핫리로드), Turbopack (프론트엔드) ## 프로젝트 구조 ``` ERP-node/ ├── backend-node/ # Express + TypeScript 백엔드 │ ├── src/ │ │ ├── app.ts # 엔트리포인트 │ │ ├── controllers/ # API 컨트롤러 │ │ ├── services/ # 비즈니스 로직 │ │ ├── middleware/ # 인증, 에러처리 미들웨어 │ │ ├── routes/ # 라우터 │ │ └── config/ # DB 연결 등 설정 │ └── package.json ├── frontend/ # Next.js 프론트엔드 │ ├── app/ # App Router 페이지 │ ├── components/ # React 컴포넌트 (shadcn/ui) │ ├── lib/ # 유틸리티, API 클라이언트 │ ├── hooks/ # Custom React Hooks │ └── package.json ├── db/ # 데이터베이스 마이그레이션 SQL │ └── migrations/ # 순차 마이그레이션 파일 ├── docker/ # Docker 설정 (dev/prod/deploy) ├── scripts/ # 개발/배포 스크립트 └── docs/ # 프로젝트 문서 ``` ## 주요 기능 - 사용자 및 권한 관리 (멀티테넌시) - 메뉴 및 화면 관리 - 플로우(워크플로우) 관리 - BOM 관리 - 문서/파일 관리 - 화면 디자이너 (동적 화면 생성) - 메일 연동 - 외부 DB 연결 ## 개발 환경 ```bash # 백엔드 (nodemon으로 자동 재시작) cd backend-node && npm run dev # 프론트엔드 (Turbopack) cd frontend && npm run dev ``` ## 주요 설정 파일 - `backend-node/.env` - 백엔드 환경 변수 (DB, JWT 등) - `frontend/.env.local` - 프론트엔드 환경 변수 - `docker/` - Docker Compose 설정 (dev/prod) - `Dockerfile` - 프로덕션 멀티스테이지 빌드 - `Jenkinsfile` - CI/CD 파이프라인