tsx
import {
defineDocumentType ,makeSource } from 'contentlayer/source-files'const
Post =defineDocumentType (() => ({
name : 'Post',
filePathPattern : `**/*.md`,
fields : {
title : {type : 'string',required : true },
date : {type : 'date',required : true }},
computedFields : {
url : {type : 'string',resolve : (post ) => `/posts/${post ._raw .flattenedPath }` },},
}))
export default
makeSource ({
contentDirPath : 'posts',/* ^^^^^^^ Directory with the Markdown files. */
documentTypes : [Post ]})