aboutsummaryrefslogtreecommitdiffstats
path: root/src/pages/micro
diff options
context:
space:
mode:
authorPinapelz <yukais@pinapelz.com>2026-06-12 18:30:42 -0700
committerPinapelz <yukais@pinapelz.com>2026-06-12 18:30:42 -0700
commite1ec4a112907f4aebad56b2b388eceb3969e6e88 (patch)
tree04008fb1a9c4e757507f9c7acf7d1f54ea39f364 /src/pages/micro
parent1b076495515ac3206c00c268e75643723a3999a5 (diff)
unify microblogHEADmaster
Diffstat (limited to 'src/pages/micro')
-rw-r--r--src/pages/micro/[...slug].astro20
-rw-r--r--src/pages/micro/index.astro54
2 files changed, 74 insertions, 0 deletions
diff --git a/src/pages/micro/[...slug].astro b/src/pages/micro/[...slug].astro
new file mode 100644
index 0000000..0ad6f8b
--- /dev/null
+++ b/src/pages/micro/[...slug].astro
@@ -0,0 +1,20 @@
+---
+import { CollectionEntry, getCollection } from 'astro:content';
+import BlogPost from '../../layouts/BlogPost.astro';
+
+export async function getStaticPaths() {
+ const posts = await getCollection('micro');
+ return posts.map((post) => ({
+ params: { slug: post.slug },
+ props: post,
+ }));
+}
+type Props = CollectionEntry<'micro'>;
+
+const post = Astro.props;
+const { Content } = await post.render();
+---
+
+<BlogPost {...post.data}>
+ <Content />
+</BlogPost>
diff --git a/src/pages/micro/index.astro b/src/pages/micro/index.astro
new file mode 100644
index 0000000..7393216
--- /dev/null
+++ b/src/pages/micro/index.astro
@@ -0,0 +1,54 @@
+---
+import BaseHead from '../../components/BaseHead.astro';
+import Header from '../../components/Header.astro';
+import Footer from '../../components/Footer.astro';
+import { SITE_TITLE, SITE_DESCRIPTION } from '../../consts';
+import { getCollection } from 'astro:content';
+import FormattedDate from '../../components/FormattedDate.astro';
+
+const posts = (await getCollection('micro')).sort(
+ (a, b) => a.data.pubDate.valueOf() - b.data.pubDate.valueOf()
+);
+---
+
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <BaseHead title={SITE_TITLE} description={SITE_DESCRIPTION} />
+ <style>
+ ul {
+ list-style-type: none;
+ padding: unset;
+ }
+ ul li {
+ display: flex;
+ }
+ ul li :global(time) {
+ flex: 0 0 130px;
+ font-style: italic;
+ color: #646464;
+ }
+ ul li a:visited {
+ color: #8e32dc;
+ }
+ </style>
+ </head>
+ <body>
+ <Header />
+ <main>
+ <section>
+ <ul>
+ {
+ posts.map((post) => (
+ <li>
+ <FormattedDate date={post.data.pubDate} />
+ <a href={`/micro/${post.slug}/`}>{post.data.title}</a>
+ </li>
+ ))
+ }
+ </ul>
+ </section>
+ </main>
+ <Footer />
+ </body>
+</html>
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage