main-portfolio/src/content.config.ts
2026-08-10 15:09:14 +03:00

36 lines
775 B
TypeScript

import { defineCollection, z } from "astro:content";
import { glob } from "astro/loaders";
const blog = defineCollection({
loader: glob({
pattern: "**/*.{md,mdx}",
base: "./src/content/blog",
}),
schema: z.object({
title: z.string(),
description: z.string(),
pubDate: z.coerce.date(),
tags: z.array(z.string()).default([]),
draft: z.boolean().default(false),
}),
});
const projects = defineCollection({
loader: glob({
pattern: "**/*.{md,mdx}",
base: "./src/content/projects",
}),
schema: z.object({
title: z.string(),
description: z.string(),
status: z.string(),
stack: z.array(z.string()).default([]),
featured: z.boolean().default(false),
draft: z.boolean().default(false),
}),
});
export const collections = {
blog,
projects,
};