mirror of
https://github.com/ArthurDanjou/artchat.git
synced 2026-01-14 15:54:03 +01:00
- Added "View setup" command to the command palette in English, French, and Spanish. - Removed "Tech Stack" command from the command palette. - Updated MessageContainer to handle new "uses" message type. - Refactored chat.ts to use a new ChatMessages function for better organization. - Created new Uses.vue component to display a list of software and gadgets. - Added Item.vue and List.vue components for rendering individual items and categories. - Updated content configuration to include new skills and uses categories. - Added new JSON files for programming languages, frontend, backend, devops, and python frameworks. - Updated existing JSON files for homelab items with improved descriptions. - Removed obsolete stack JSON files.
70 lines
1.5 KiB
TypeScript
70 lines
1.5 KiB
TypeScript
import { defineCollection, z } from '@nuxt/content'
|
|
|
|
export const collections = {
|
|
projects: defineCollection({
|
|
type: 'page',
|
|
source: 'projects/*.md',
|
|
schema: z.object({
|
|
slug: z.string(),
|
|
title: z.string(),
|
|
description: z.string(),
|
|
publishedAt: z.string(),
|
|
readingTime: z.number().optional(),
|
|
tags: z.array(z.string()),
|
|
cover: z.string(),
|
|
favorite: z.boolean().optional(),
|
|
}),
|
|
}),
|
|
writings: defineCollection({
|
|
type: 'page',
|
|
source: 'writings/*.md',
|
|
schema: z.object({
|
|
slug: z.string(),
|
|
title: z.string(),
|
|
description: z.string(),
|
|
publishedAt: z.string(),
|
|
readingTime: z.number(),
|
|
cover: z.string().optional(),
|
|
tags: z.array(z.string()),
|
|
}),
|
|
}),
|
|
usesCategories: defineCollection({
|
|
type: 'data',
|
|
source: 'uses/categories/*.json',
|
|
schema: z.object({
|
|
id: z.string(),
|
|
name: z.object({
|
|
en: z.string(),
|
|
fr: z.string(),
|
|
es: z.string(),
|
|
}),
|
|
}),
|
|
}),
|
|
uses: defineCollection({
|
|
type: 'data',
|
|
source: 'uses/*.json',
|
|
schema: z.object({
|
|
name: z.string(),
|
|
description: z.object({
|
|
en: z.string(),
|
|
fr: z.string(),
|
|
es: z.string(),
|
|
}),
|
|
category: z.string(),
|
|
}),
|
|
}),
|
|
skills: defineCollection({
|
|
type: 'data',
|
|
source: 'skills/*.json',
|
|
schema: z.object({
|
|
name: z.string(),
|
|
description: z.string(),
|
|
items: z.object({
|
|
name: z.string(),
|
|
icon: z.string(),
|
|
color: z.string(),
|
|
}),
|
|
}),
|
|
}),
|
|
}
|