aboutsummaryrefslogtreecommitdiff
path: root/components/getPostMetadata.js
diff options
context:
space:
mode:
Diffstat (limited to 'components/getPostMetadata.js')
-rw-r--r--components/getPostMetadata.js20
1 files changed, 20 insertions, 0 deletions
diff --git a/components/getPostMetadata.js b/components/getPostMetadata.js
new file mode 100644
index 0000000..88e4566
--- /dev/null
+++ b/components/getPostMetadata.js
@@ -0,0 +1,20 @@
+import {readdirSync, readFileSync} from "fs";
+import matter from "gray-matter";
+
+export default function getPostMetadata() {
+ const folder = "posts/";
+ const files = readdirSync(folder);
+ const markdownPosts = files.filter((file) => file.endsWith(".md"));
+
+ return markdownPosts.map((fileName) => {
+ const fileContent = readFileSync(`posts/${fileName}`, "utf-8");
+ const matterResult = matter(fileContent);
+ return {
+ title: matterResult.data.title,
+ author: matterResult.data.author,
+ date: matterResult.data.date,
+ description: matterResult.data.description,
+ slug: fileName.replace(".md", "")
+ }
+ })
+}