feat: add madeira blog post upgrade astro

This commit is contained in:
2025-02-16 15:33:45 +01:00
parent c1fefe3f3f
commit b607cbeb2a
48 changed files with 2653 additions and 3235 deletions

33
src/content.config.ts Normal file
View File

@@ -0,0 +1,33 @@
import { glob } from 'astro/loaders';
import { defineCollection, z, type ImageFunction } from 'astro:content';
const defaultSchema = ({ image }: { image: ImageFunction }) => z.object({
title: z.string(),
date: z.date(),
cover: image().optional(),
links: z.array(z.array(z.string())).optional(),
coverAlt: z.string().optional(),
toc: z.boolean().optional(),
description: z.string().optional(),
icon: z.string().optional(),
draft: z.boolean().optional(),
featured: z.boolean().optional(),
tags: z.array(z.string()).optional(),
_layout: z.enum(['normal', 'transparent']).optional(),
})
export const collections = {
'blog': defineCollection({
loader: glob({ pattern: '**/[^_]*.{md,mdx}', base: "./src/content/blog" }),
schema: defaultSchema,
}),
"projects": defineCollection({
loader: glob({ pattern: '**/[^_]*.{md,mdx}', base: "./src/content/projects" }),
schema: defaultSchema,
}),
"photos": defineCollection({
loader: glob({ pattern: '**/[^_]*.{md,mdx}', base: "./src/content/photos" }),
schema: defaultSchema,
})
};