> For the complete documentation index, see [llms.txt](https://toktokhan.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://toktokhan.gitbook.io/docs/basic-guides/convention/pages/structure.md).

# Structure

pages 폴더의 구조입니다.

<figure><img src="https://1168173052-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9A2Jt7XcUkiyMXRHBecz%2Fuploads%2Fa6OZFq5hQUpljrXSF5gP%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202023-07-23%20%E1%84%8B%E1%85%A9%E1%84%8C%E1%85%A5%E1%86%AB%2010.24.19.png?alt=media&amp;token=c443e34a-3e14-4277-8d24-ef019b2a604c" alt="" width="272"><figcaption></figcaption></figure>

Next.js 프레임워크는 **pages 폴더 내에 파일명을 url로 생성하기** 때문에 [**REST API**](https://meetup.nhncloud.com/posts/92) **규칙을 유의하며 파일 명을 작성**해주세요.

간단한 규칙은 아래와 같습니다.

* **kebab case** 사용
* **명확한 의미의 문자 사용** 및 특수문자 사용 금지
* **계층 관계** 나타내기

Next.js에서 **`/booking/index.tsx`** 파일과 **`/booking.tsx`** 파일 모두 **`/booking` 이라는 url 경로**를 생성합니다.

두 방식 모두 사용 가능하지만 저희 회사에서는 통상적으로 **`/booking/index.tsx`** 의 방식으로 코드를 작성하며,

어떤 방식을 사용하든 **한 프로젝트 내에서는 하나의 방식을 정의하여 사용하기를 권장**합니다.

{% hint style="info" %}
**왜 `index.tsx` 의 방식으로 작성하나요?**<br>

각 동료분들의 **사용 빈도로 도출된 결과**입니다. 대부분 **`/booking/index.tsx`** 방식으로 사용하고 있기에 안내드린 부분이며, 직접 파일 그대로 작성하셔도 문제는 없습니다.\
\
다만 보통 업무에서 사용하는 **`tokript`**&#xC758; **`gen:route`** 를 사용할 때에는 **`/booking/index.tsx`** 과 **`/booking.tsx`** 가 **조금 달라집니다.**

**`/booking/index.tsx`** 로 생성한 **`route.ts`** 파일은 **{MAIN: ‘url’} 의 형식으로 경로를 할당**하지만 **`/booking.tsx`** 형식은 **직접 string 형식으로 경로를 할당**해줍니다.<br>

**`gen:route`** 의 좀 더 자세한 설명은 tokript 문서(링크예정)를 참고해주세요.
{% endhint %}

<figure><img src="https://1168173052-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9A2Jt7XcUkiyMXRHBecz%2Fuploads%2FFd9RNahDzXuLUuxGMY1Z%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202023-07-24%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%202.33.34.png?alt=media&amp;token=77920fad-f569-4fb9-ab90-173d54bf97cc" alt=""><figcaption></figcaption></figure>
