import fm from 'front-matter';
const modules = import.meta.glob('./BlogPosts/*.md', { query: '?raw', import: 'default' });
export async function loadPosts() {
const posts = [];
for (const path in modules) {
const fileContent = await modules[path]();
const { attributes } = fm(fileContent);
posts.push({
...attributes,
path,
});
}
return posts;
}
/* // /data/blog-post-data.js
export const blogPosts = [
{
title: "#0 - Setting Up Camp",
slug: "0-setting-up-camp",
filename: "#0-setting-up-camp.md",
date: "2025-08-24 05:00:00 UTC",
canonical_url: "https://campfire.dlseitz.dev/0-setting-up-camp",
tags: ["fullstack", "developerjourney", "BuildInPublic", "introduction", "Campfire-Logs"],
header: {
image: "./assets/kemal-berkay-dogan-TcUN5sDZPZ8-unsplash.jpg",
attribution: 'Photo by Kemal Berkay Dogan on Unsplash'
},
published: true
},
{
title: "#1 - The Great Gitea Migration",
slug: "1-the-great-gitea-migration",
filename: "#1-the-great-gitea-migration.md",
date: "2025-08-27 20:19:51 UTC",
canonical_url: "https://campfire.dlseitz.dev/1-the-great-gitea-migration",
tags: ["Campfire-Logs", "SelfHosting", "Devops", "gitea"],
header: {
image: "./assets/leon-contreras-YndHL7gQIJE-unsplash.jpg",
attribution: 'Photo by Leon Contreras on Unsplash'
},
published: true
},
{
title: "#2 - Retrofitting the Privacy Policy",
slug: "2-retrofitting-the-privacy-policy",
filename: "#2-retrofitting-the-privacy-policy.md",
date: "2025-09-02 20:41:21 UTC",
canonical_url: "https://campfire.dlseitz.dev/2-retrofitting-the-privacy-policy",
tags: ["WebDevelopment", "FullStackDevelopment", "Nodejs", "DevLife", "Campfire-Logs"],
header: {
image: "./assets/2-privacy-policy-head-img.png",
attribution: "Image generated with Sora. | © 2025 Derek L. Seitz"
},
published: true
},
{
title: "#3 - Data Privacy: Things to Consider",
slug: "3-data-privacy-things-to-consider",
filename: "#3-data-privacy-things-to-consider.md",
date: "2025-09-03 03:49:36 UTC",
canonical_url: "https://campfire.dlseitz.dev/3-data-privacy-things-to-consider",
tags: ["dataprivacy", "WebDevelopment", "Freelancing", "PrivacyPolicy", "Campfire-Logs"],
header: {
image: "./assets/toa-heftiba-x9I-6yoXrXE-unsplash.jpg",
attribution: 'Photo by Toa Heftiba on Unsplash'
},
published: true
},
{
title: "#4 - Refactoring a False Sense of Simplicity",
slug: "4-refactoring-a-false-sense-of-simplicity",
filename: "#4-refactoring-a-false-sense-of-simplicity.md",
date: "2025-09-12 01:08:54 UTC",
canonical_url: "https://campfire.dlseitz.dev/4-refactoring-a-false-sense-of-simplicity",
tags: ["refactoring", "WebDevelopment", "FrontendDevelopment", "CSS", "Campfire-Logs"],
header: {
image: "./assets/20250911_2016_Coding by Campfire_simple_compose_01k4xqta8sfjyrws9ezcwjpg9x.png",
attribution: "Image generated with Sora. | © 2025 Derek L. Seitz"
},
published: true
},
{
title: "#5 - The Power of [Separation] Compels You!",
slug: "5-the-power-of-separation-compels-you",
filename: "#5-the-power-of-separation-compels-you.md",
date: "2025-09-20 21:51:29 UTC",
canonical_url: "https://campfire.dlseitz.dev/5-the-power-of-separation-compels-you",
tags: ["WebDevelopment","refactoring","JavaScript","apiintegration", "Campfire-Logs"],
header: {
image: "./assets/5-separation.webp",
attribution: "Image generated with Sora. | © 2025 Derek L. Seitz"
},
published: true
},
{
title: "#6 - Learning React",
slug: "6-learning-react",
filename: "#6-learning-react.md",
date: null,
cononical_url: null,
tags: null,
published: false
}
]; */