generate-metadata-of-markdown

마크다운 파일의 메타 데이터 생성

English 한국어

npm 버전 다운로드 jsDeliver

이 패키지는 디렉토리를 순회하여 markdown 파일에 대한 메타데이터 JSON파일을 생성합니다.

이 패키지는 개인 프로젝트에 적용하기 위한 목적으로 만들어졌습니다. publish-markdown-notebook 조금 더 다양하게 활용할 수 있도록 확장성을 갖출 예정입니다. 어떤 의견이 있으시면 말씀해주세요. 😉

설치

npm i @typh007/markdown-metadata

사용법

import { generateNoteList } from "@typh007/markdown-metadata";

// 사용 예시
const publishPath = "마크다운 파일이 있는 디렉토리 경로";
generateNoteList(publishPath);

publishPath에는 문자열 배열 또는 문자열이 올 수 있습니다.

const publishPath = [
    "경로1",
    "경로2"
];

const publishPaht = "경로";

generateNoteList에 두 번째 인자인 withOutRoot를 명시하여 note_list의 파일 경로에서 루트 경로를 포함히지 않을 수 있습니다.

./your-script.js
./your-script.js -c /path/to/content

./your-script.js --content /path/to/content --output /path/to/output --without-root

프론트매터

---
title: "Sample Document"
description: "This is a sample document with front matter."
created: 2024-06-04
updated: 2024-06-04
tags:
  - example
  - tutorial
route:
  - section1
  - subsection2
summary: "This document provides a tutorial example."
---

# Heading 1

Content of the document goes here.

## Heading 2

More content here.
"notedata": [
    {
        "id": "id",
        "name": "name",
        "route": ["", "", ""],
        "created": 1715498708342,
        "updated": 1715498708342,
        "outline": [
            {"depth": 1, "title": "title", "id": "id"},
        ],
        "tags": [],
        "links": [],
        "summary": "summary",
        "images": []
    }
],
"graphdata": [
    "nodes" : [
        {   "id": "id",
            "group": "note or tag",
            "title": "title"
        }
    ],
    "links" : [
        {
            "source": "source", 
            "target": "target",
            "group": "note or tag"
        }
    ],
]
import { generateNoteList } from "@typh007/markdown-metadata";

// 사용 예시
const publishPath = "마크다운 파일이 있는 디렉토리 경로";
generateNoteList(publishPath, withOutRoot); // true or false -- default: false

결과

generateNoteList함수를 호출하면 기본적으로 ./data경로에 note_list.json, link_list.json, note_list.json, tag_list.json 파일이 생성됩니다.

파일 생성 경로를 수정하려면 setDataRoot함수에 경로를 설정하세요.

import { generateNoteList, setDataRoot } from "@typh007/markdown-metadata";

setDataRoot("export path");
generateNoteList("target path");

note_list.json은 노트별 정보를 담고 있습니다. 다음 항목을 포함합니다.

link_list.json은 모든 노트들의 옵시디언 백링크 항목을 가지고 있습니다. 다음 항목을 포함합니다.

tag_list.json은 모든 파일의 마크다운 태그 목록을 가지고 있습니다.

🔭 향후 기능 추가

🤝 기여

컨트리뷰션 요청이 있다면 환영합니다!

📝 라이선스

이 프로젝트는 MIT 라이선스 하에 배포됩니다.


추가적인 질문이나 지원이 필요한 경우 언제든지 문의 주세요!