category creation work

create markdown pages for current and future content
populate frontmatter
create component for listing pages in category
test functionality for automatically finding and
listing markdown posts for each category with
their respective frontmatter
This commit is contained in:
emma 2025-03-03 04:13:23 -05:00
parent 80f39598b9
commit 4fdf961e06
13 changed files with 79 additions and 9 deletions

View File

@ -0,0 +1,5 @@
---
const { url, title, description } = Astro.props;
---
<li><a href=`${url}`>{title}</a> <p>{description}</p></li>

View File

@ -0,0 +1,6 @@
---
layout: ../../../../layouts/MarkdownLayout.astro
title: musically emma
description: "music has been a fixture of my life since a child. both listening to it and playing it. read about my journey through my life in regards to music, and my relationship with making music that i had at one point in my life"
---

View File

@ -0,0 +1,6 @@
---
layout: ../../../../layouts/MarkdownLayout.astro
title: photographically emma
description: "an intense interest of mine throughout my early and teenage years was photography. you can read about it, and see some of my photos. i hope to revisit this interest soon!"
---

View File

@ -0,0 +1,6 @@
---
layout: ../../../../layouts/MarkdownLayout.astro
title: technically emma
description: "technology was an interest that could always feed my young mind. i was fascinated by it. always driven to learn something new about it. i'd find a career in tech, that would lead to more discoveries about myself. technology will always be a love of mine <3"
---

View File

@ -1,8 +1,10 @@
--- ---
import BasicLayout from "../../../layouts/BasicLayout.astro"; import BasicLayout from "../../../layouts/BasicLayout.astro";
const pageTitle = "emma's interests - category" import CategoryPage from "../../../components/CategoryPage.astro";
const allPosts = Object.values(import.meta.glob('./entires/*.md', {eager: true})); const pageTitle = "emma's interests - category";
const allPosts = Object.values(import.meta.glob('./entries/*.md', {eager: true}));
--- ---
<html lang="en"> <html lang="en">
@ -16,7 +18,9 @@ const allPosts = Object.values(import.meta.glob('./entires/*.md', {eager: true})
<body> <body>
<BasicLayout> <BasicLayout>
<h1>{pageTitle}</h1> <h1>{pageTitle}</h1>
<ul>
{allPosts.map((post: any) => <CategoryPage url={post.url} title={post.frontmatter.title} description={post.frontmatter.description}/>)}
</ul>
</BasicLayout> </BasicLayout>
</body> </body>
</html> </html>

View File

@ -0,0 +1,6 @@
---
layout: ../../../../layouts/MarkdownLayout.astro
title: emma's goals
description: "a list of goals i have in mind that i would like to accomplish. there's no particular timeframe. the only thing i would like is to complete them sooner rather than later"
---

View File

@ -0,0 +1,6 @@
---
layout: ../../../../layouts/MarkdownLayout.astro
title: emma's pets
description: "i've had pets all throughout my life. they are a core part of who i am. i've learn so much about animals and myself in the process. you can read about some of them here"
---

View File

@ -0,0 +1,6 @@
---
layout: ../../../../layouts/MarkdownLayout.astro
title: emma's picrews
description: "i've used picrew as a means to express myself in terms of outwards appearance. it has helped me better understand how i see myself. i'd like to share them"
---

View File

@ -0,0 +1,6 @@
---
layout: ../../../../layouts/MarkdownLayout.astro
title: emma's things to do
description: "a list of things i'm interested in doing that you can to. resources to do them are provided. mostly related to web development for the time being"
---

View File

@ -1,8 +1,10 @@
--- ---
import BasicLayout from "../../../layouts/BasicLayout.astro"; import BasicLayout from "../../../layouts/BasicLayout.astro";
const pageTitle = "emma's self - category" import CategoryPage from "../../../components/CategoryPage.astro";
const pageTitle = "emma's self - category";
const allPosts = Object.values(import.meta.glob('./entries/*.md', {eager: true}));
const allPosts = Object.values(import.meta.glob('./entires/*.md', {eager: true}));
--- ---
<html lang="en"> <html lang="en">
@ -16,7 +18,9 @@ const allPosts = Object.values(import.meta.glob('./entires/*.md', {eager: true})
<body> <body>
<BasicLayout> <BasicLayout>
<h1>{pageTitle}</h1> <h1>{pageTitle}</h1>
<ul>
{allPosts.map((post: any) => <CategoryPage url={post.url} title={post.frontmatter.title} description={post.frontmatter.description}/>)}
</ul>
</BasicLayout> </BasicLayout>
</body> </body>
</html> </html>

View File

@ -0,0 +1,6 @@
---
layout: ../../../../layouts/MarkdownLayout.astro
title: check out my journal
description: "no, not literally :p i want to share with you why journalling means so much to me, from why i write in a journal, the pens i use, and the journal itself"
---

View File

@ -0,0 +1,6 @@
---
layout: ../../../../layouts/MarkdownLayout.astro
title: a list of positive traits
description: "this list of positive traits was shared with me by my therapist. i find them to be useful writing prompts for my journal entries sometimes. it can be nice to just give ourselves a pat on the back sometimes. we all could genuinely use more of those <3"
---

View File

@ -1,8 +1,9 @@
--- ---
import BasicLayout from "../../../layouts/BasicLayout.astro"; import BasicLayout from "../../../layouts/BasicLayout.astro";
const pageTitle = "emma's rays of sunshine - category" import CategoryPage from "../../../components/CategoryPage.astro";
const pageTitle = "emma's rays of sunshine - category";
const allPosts = Object.values(import.meta.glob('./entires/*.md', {eager: true})); const allPosts = Object.values(import.meta.glob('./entries/*.md', {eager: true}));
--- ---
<html lang="en"> <html lang="en">
@ -16,7 +17,9 @@ const allPosts = Object.values(import.meta.glob('./entires/*.md', {eager: true})
<body> <body>
<BasicLayout> <BasicLayout>
<h1>{pageTitle}</h1> <h1>{pageTitle}</h1>
<ul>
{allPosts.map((post: any) => <CategoryPage url={post.url} title={post.frontmatter.title} description={post.frontmatter.description}/>)}
</ul>
</BasicLayout> </BasicLayout>
</body> </body>
</html> </html>