[Nextjs] 모노레포 (turborepo)

2025. 2. 27. 15:44·개발/React
728x90
반응형

Nextjs 모노레포 구성 (turborepo)

모노레포로 구성하면 좋은점들이 많다.

나는 코드를 다른 프로젝트와 공유할수 있다는 점이 가장 매력적으로 느낀다.

turborepo로 모노레포를 구성해 보겠다.

난 npm 10.9.0 환경으로 진행한다.

npx create-turbo@latest

프로젝트 이름 입력후 패키지매니저 선택후 끝!

나는 설치하다가 실패 어쩌구 권한 어쩌구 떠서 아래 명령어 실행함

sudo chown -R 501:20 [npm 경로]

실행 후 apps 폴더에 docs 와 web 프로젝트가 보인다.

아래 packages 폴더에는 공통으로 쓰는 코드들로 보인다.

docs 프로젝트로 들어가 page.tsx 에서 Button을 import 해온 경로를 보면 알 수 있다.

import { Button } from "@repo/ui/button";

나머지 설정들은 다 되어있어서 편하다.

admin 프로젝트를 추가해보자.

# 루트 경로에서 실행
mkdir -p apps/admin
cd apps/admin
npx create-next-app@latest .

하고 다른 프로젝트에서 package.json 배껴와서 구성

{
  "name": "web",
  "version": "0.1.0",
  "type": "module",
  "private": true,
  "scripts": {
    "dev": "next dev --turbopack --port 3000",
    "build": "next build",
    "start": "next start",
    "lint": "next lint --max-warnings 0",
    "check-types": "tsc --noEmit"
  },
  "dependencies": {
    "@repo/ui": "*",
    "next": "^15.1.6",
    "react": "^19.0.0",
    "react-dom": "^19.0.0"
  },
  "devDependencies": {
    "@repo/eslint-config": "*",
    "@repo/typescript-config": "*",
    "@types/node": "^22",
    "@types/react": "19.0.8",
    "@types/react-dom": "19.0.3",
    "eslint": "^9.21.0",
    "typescript": "5.7.3"
  }
}

그리고 admin 폴더에서 npm run dev 했더니 그냥 되네. 이게 되네

그리고 dependencies 에서 "@repo/ui": "*", 요부분으로 공통 코드 부분을 가져올수 있다.

끝!

728x90
반응형

'개발 > React' 카테고리의 다른 글

[Nextjs15] 에러핸들링  (0) 2025.02.27
[React] React Modal 어디까지 만들어봤니?  (0) 2024.10.24
[React] react template 만들어놓기  (0) 2024.02.12
[React] styled-components에서 Pseudo selector &을 생략하면 오류  (0) 2023.10.04
[React] React.memo 최적화  (1) 2023.09.26
'개발/React' 카테고리의 다른 글
  • [Nextjs15] 에러핸들링
  • [React] React Modal 어디까지 만들어봤니?
  • [React] react template 만들어놓기
  • [React] styled-components에서 Pseudo selector &을 생략하면 오류
TeTedo.
TeTedo.
  • TeTedo.
    TeTedo 개발 일기
    TeTedo.
  • 전체
    오늘
    어제
    • 분류 전체보기 (319)
      • 개발 (274)
        • Article (4)
        • 정리 (21)
        • Spring Boot (17)
        • JPA (2)
        • JAVA (6)
        • Database (4)
        • 자료구조 (11)
        • 알고리즘 (32)
        • React (20)
        • Docker (10)
        • node.js (18)
        • Devops (11)
        • Linux (4)
        • TypeScript (3)
        • Go (10)
        • HyperLedger (4)
        • BlockChain (43)
        • html, css, js (48)
        • CS (3)
        • AWS (3)
      • 모아두고 나중에 쓰기 (3)
      • 팀프로젝트 (18)
        • SNS(키보드워리어) (9)
        • close_sea (9)
      • 개인프로젝트 (1)
        • Around Flavor (1)
        • CHAM (13)
        • ethFruitShop (5)
      • 독서 (0)
        • 스프링부트와 AWS로 혼자 구현하는 웹 서비스 (0)
  • 블로그 메뉴

    • 홈
    • 개발일기
    • CS
    • 실습
    • 코딩테스트
    • 웹
    • Go
    • node.js
    • 팀플
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    erc20
    CSS
    mysql
    html
    블록체인
    js
    도커
    go언어
    하이퍼레저
    명령어
    nodejs
    30일 챌린지
    프로그래머스
    React
    node
    컨테이너
    go
    node.js
    ERC721
    30일챌린지
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
TeTedo.
[Nextjs] 모노레포 (turborepo)
상단으로

티스토리툴바