Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

croco-dev/darun

Repository files navigation

darun.io

darun.io는 pnpm workspace와 Turborepo 기반으로 구성된 모노레포입니다.

Project Structure

.
├── apps/
│ ├── graphql-api/
│ ├── service-web/
│ ├── admin-web/
│ └── visual-web/
├── libs/
│ ├── accounts/
│ ├── companies/
│ ├── images/
│ ├── magazines/
│ ├── opengraph/
│ ├── pages/
│ ├── products/
│ ├── recommendation/
│ ├── search/
│ ├── shared/
│ ├── translation/
│ └── voting/
└── package.json

Apps

App 역할 로컬 개발 포트
apps/graphql-api Apollo Server 기반 GraphQL API, AWS Lambda 및 Serverless Offline 실행 4000
apps/service-web 사용자 대상 메인 서비스 웹, Next.js 15 기반 프론트엔드 3000
apps/admin-web 운영용 관리자 웹, Next.js 기반 백오피스 3001
apps/visual-web 비주얼 중심 웹 경험을 제공하는 Next.js 프론트엔드 3002

Libs

  • 도메인 라이브러리: accounts, companies, images, magazines, pages, products, recommendation, search, translation, voting
  • 공통 라이브러리: shared
  • 추가 웹 관련 라이브러리: opengraph

Prerequisites

  • Node.js >= 22
  • pnpm >= 10

Getting Started

1. 의존성 설치

pnpm install

2. 환경 변수 설정

각 앱 디렉토리에 .env.sample을 복사해 .env 파일을 만들고 값을 채웁니다.

cp apps/graphql-api/.env.sample apps/graphql-api/.env
cp apps/service-web/.env.sample apps/service-web/.env.local
cp apps/admin-web/.env.sample apps/admin-web/.env.local
cp apps/visual-web/.env.sample apps/visual-web/.env.local

3. 개발 서버 실행

전체 워크스페이스를 함께 실행합니다.

pnpm dev

앱별로 실행하려면 필터를 사용합니다.

pnpm --filter graphql-api dev # http://localhost:4000
pnpm --filter service-web dev # http://localhost:3000
pnpm --filter admin-web dev # http://localhost:3001
pnpm --filter visual-web dev # http://localhost:3002

graphql-apiservice-web은 포트가 다르므로 동시에 실행할 수 있습니다.

검증

pnpm lint
pnpm typecheck
pnpm test

Tech Stack

  • Monorepo: pnpm workspace, Turborepo
  • Frontend: React 19, Next.js 15, Tailwind CSS 4
  • Backend: Apollo Server, TypeDI, AWS Lambda, Serverless
  • Data: Drizzle ORM, Mongoose
  • Quality: ESLint, Prettier, Vitest, Lefthook

Contributing

환경 변수 설명, 개발 워크플로우, 코드 품질 도구, 기여 프로세스는 CONTRIBUTING.md를 참고하세요.

Contributors

AltStyle によって変換されたページ (->オリジナル) /