F-Lab
🚀
상위권 IT회사 합격 이력서 무료로 모아보기

MDX 컴포넌트와 코드 블록 스타일링

writer_thumbnail

F-Lab : 상위 1% 개발자들의 멘토링

AI가 제공하는 얕고 넓은 지식을 위한 짤막한 글입니다!



MDX 컴포넌트와 코드 블록 스타일링 소개

이번 블로그 포스트에서는 MDX 컴포넌트를 활용한 블로그 상세 페이지 구현과 코드 블록 스타일링에 대해 다루겠습니다.

MDX는 마크다운과 JSX를 결합한 포맷으로, 개발자들이 문서와 코드를 함께 작성할 수 있게 해줍니다.

이 포스트에서는 MDX 컴포넌트를 사용하여 블로그 페이지를 구성하고, 코드 블록을 시각적으로 강조하는 방법을 설명합니다.

또한, 리하이프 프리티 코드 플러그인을 사용하여 코드 블록을 꾸미는 방법도 다룹니다.

왜냐하면 MDX와 코드 블록 스타일링은 개발자들이 블로그를 더욱 매력적으로 만들 수 있는 중요한 요소이기 때문입니다.



MDX 컴포넌트 설정

MDX 컴포넌트는 MDX 파일 내에서 스타일을 설정할 때 사용됩니다.

이를 통해 이미지 태그를 넥스트 이미지 컴포넌트로 바꾸는 등 다양한 스타일링이 가능합니다.

예를 들어, 다음과 같이 MDX 컴포넌트를 설정할 수 있습니다:

import Image from 'next/image';
const components = {
img: (props) => <Image {...props} />
};
export default components;

왜냐하면 MDX 컴포넌트를 사용하면 코드의 가독성을 높이고, 스타일링을 쉽게 적용할 수 있기 때문입니다.



리하이프 프리티 코드 플러그인

리하이프 프리티 코드 플러그인은 MDX 파일 내의 코드 블록을 꾸미기 위해 사용됩니다.

이 플러그인을 사용하면 코드 블록에 클래스 네임이나 데이터 롤을 추가하여 CSS로 스타일링할 수 있습니다.

예를 들어, 다음과 같이 리하이프 프리티 코드를 설정할 수 있습니다:

import rehypePrettyCode from 'rehype-pretty-code';
const options = {
theme: 'dracula',
onVisitLine(node) {
if (node.children.length === 0) {
node.children = [{ type: 'text', value: ' ' }];
}
}
};
export default options;

왜냐하면 리하이프 프리티 코드를 사용하면 코드 블록을 시각적으로 더 매력적으로 만들 수 있기 때문입니다.



데이 JS 라이브러리 사용

데이 JS는 날짜와 시간을 다루기 위한 라이브러리입니다.

이 라이브러리를 사용하면 블로그 포스트의 작성 날짜를 쉽게 표시할 수 있습니다.

예를 들어, 다음과 같이 데이 JS를 사용할 수 있습니다:

import dayjs from 'dayjs';
const formattedDate = dayjs().format('YYYY-MM-DD');
console.log(formattedDate);

왜냐하면 데이 JS를 사용하면 날짜와 시간을 다루는 코드의 가독성을 높일 수 있기 때문입니다.



블로그 상세 페이지 구현

블로그 상세 페이지는 헤더와 본문으로 구성됩니다.

헤더에는 블로그의 제목, 작성 날짜, 작성자 등의 정보가 포함됩니다.

본문에는 블로그의 내용이 포함되며, MDX 파일을 사용하여 작성됩니다.

예를 들어, 다음과 같이 블로그 상세 페이지를 구현할 수 있습니다:

const BlogPost = ({ post }) => {
return (
<div>
<h1>{post.title}</h1>
<p>{post.date}</p>
<div>{post.content}</div>
</div>
);
};
export default BlogPost;

왜냐하면 블로그 상세 페이지는 블로그의 핵심 콘텐츠를 사용자에게 전달하는 중요한 역할을 하기 때문입니다.



결론

이번 포스트에서는 MDX 컴포넌트와 코드 블록 스타일링에 대해 다루었습니다.

MDX 컴포넌트를 사용하여 블로그 페이지를 구성하고, 리하이프 프리티 코드 플러그인을 사용하여 코드 블록을 꾸미는 방법을 설명했습니다.

또한, 데이 JS 라이브러리를 사용하여 날짜와 시간을 다루는 방법도 소개했습니다.

이러한 기술들을 활용하면 블로그를 더욱 매력적이고 가독성 높게 만들 수 있습니다.

왜냐하면 블로그의 디자인과 가독성은 사용자 경험에 큰 영향을 미치기 때문입니다.

ⓒ F-Lab & Company

이 컨텐츠는 F-Lab의 고유 자산으로 상업적인 목적의 복사 및 배포를 금합니다.

조회수
logo
copyright © F-Lab & Company 2025