chore: migrate to Astro 5 stuff
This commit is contained in:
parent
792b592fca
commit
113248b6ed
6 changed files with 503 additions and 947 deletions
|
@ -1,6 +1,5 @@
|
||||||
import { defineConfig } from 'astro/config'
|
import { defineConfig } from 'astro/config'
|
||||||
import node from '@astrojs/node'
|
import node from '@astrojs/node'
|
||||||
import mdx from '@astrojs/mdx'
|
|
||||||
import sitemap from '@astrojs/sitemap'
|
import sitemap from '@astrojs/sitemap'
|
||||||
import serviceWorker from '@ayco/astro-sw'
|
import serviceWorker from '@ayco/astro-sw'
|
||||||
|
|
||||||
|
@ -8,13 +7,12 @@ import { VERSION } from './src/consts'
|
||||||
|
|
||||||
// https://astro.build/config
|
// https://astro.build/config
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
output: 'hybrid',
|
output: 'static',
|
||||||
site: 'https://cozy.pub/',
|
site: 'https://cozy.pub/',
|
||||||
adapter: node({
|
adapter: node({
|
||||||
mode: 'middleware',
|
mode: 'middleware',
|
||||||
}),
|
}),
|
||||||
integrations: [
|
integrations: [
|
||||||
mdx(),
|
|
||||||
sitemap(),
|
sitemap(),
|
||||||
serviceWorker({
|
serviceWorker({
|
||||||
path: './src/sw.mjs',
|
path: './src/sw.mjs',
|
||||||
|
|
13
package.json
13
package.json
|
@ -24,9 +24,8 @@
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@astrojs/check": "^0.9.4",
|
"@astrojs/check": "^0.9.4",
|
||||||
"@astrojs/mdx": "^4.0.3",
|
|
||||||
"@astrojs/node": "^9.0.0",
|
"@astrojs/node": "^9.0.0",
|
||||||
"@astrojs/rss": "^4.0.10",
|
"@astrojs/rss": "^4.0.11",
|
||||||
"@astrojs/sitemap": "^3.2.1",
|
"@astrojs/sitemap": "^3.2.1",
|
||||||
"@ayco/astro-sw": "^0.8.14",
|
"@ayco/astro-sw": "^0.8.14",
|
||||||
"@eslint/compat": "^1.2.4",
|
"@eslint/compat": "^1.2.4",
|
||||||
|
@ -34,7 +33,7 @@
|
||||||
"@extractus/article-extractor": "^8.0.16",
|
"@extractus/article-extractor": "^8.0.16",
|
||||||
"@fastify/middie": "^9.0.2",
|
"@fastify/middie": "^9.0.2",
|
||||||
"@fastify/static": "^8.0.3",
|
"@fastify/static": "^8.0.3",
|
||||||
"astro": "^5.1.1",
|
"astro": "^5.1.5",
|
||||||
"astro-eslint-parser": "^1.1.0",
|
"astro-eslint-parser": "^1.1.0",
|
||||||
"astro-iconify": "^1.2.0",
|
"astro-iconify": "^1.2.0",
|
||||||
"eslint": "^9.17.0",
|
"eslint": "^9.17.0",
|
||||||
|
@ -42,15 +41,15 @@
|
||||||
"eslint-plugin-astro": "^1.3.1",
|
"eslint-plugin-astro": "^1.3.1",
|
||||||
"eslint-plugin-jsx-a11y": "^6.10.2",
|
"eslint-plugin-jsx-a11y": "^6.10.2",
|
||||||
"eslint-plugin-prettier": "^5.2.1",
|
"eslint-plugin-prettier": "^5.2.1",
|
||||||
"fastify": "^5.2.0",
|
"fastify": "^5.2.1",
|
||||||
"globals": "^15.14.0",
|
"globals": "^15.14.0",
|
||||||
"husky": "^9.1.7",
|
"husky": "^9.1.7",
|
||||||
"lint-staged": "^15.3.0",
|
"lint-staged": "^15.3.0",
|
||||||
"prettier": "^3.4.2",
|
"prettier": "^3.4.2",
|
||||||
"prettier-plugin-astro": "^0.14.1",
|
"prettier-plugin-astro": "^0.14.1",
|
||||||
"sass": "^1.83.0",
|
"sass": "^1.83.1",
|
||||||
"typescript": "^5.7.2",
|
"typescript": "^5.7.3",
|
||||||
"typescript-eslint": "^8.18.2",
|
"typescript-eslint": "^8.19.1",
|
||||||
"ultrahtml": "^1.5.3",
|
"ultrahtml": "^1.5.3",
|
||||||
"vitest": "^2.1.8"
|
"vitest": "^2.1.8"
|
||||||
},
|
},
|
||||||
|
|
1424
pnpm-lock.yaml
1424
pnpm-lock.yaml
File diff suppressed because it is too large
Load diff
|
@ -12,7 +12,7 @@ import { VERSION } from '../consts'
|
||||||
/> by <a href="https://ayo.ayco.io">Ayo Ayco</a>
|
/> by <a href="https://ayo.ayco.io">Ayo Ayco</a>
|
||||||
<br />
|
<br />
|
||||||
<a href="/blog">Blog</a> •
|
<a href="/blog">Blog</a> •
|
||||||
<a href="https://github.com/ayoayco/cozy">GitHub</a> •
|
<a href="https://ayco.io/sh/cozy">SourceHut</a> •
|
||||||
<a href="https://social.ayco.io/@ayo">Mastodon</a>
|
<a href="https://social.ayco.io/@ayo">Mastodon</a>
|
||||||
<br />
|
<br />
|
||||||
<span>{VERSION}</span>
|
<span>{VERSION}</span>
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
|
import { glob } from 'astro/loaders'
|
||||||
import { defineCollection, z } from 'astro:content'
|
import { defineCollection, z } from 'astro:content'
|
||||||
|
|
||||||
const blog = defineCollection({
|
const blog = defineCollection({
|
||||||
type: 'content',
|
loader: glob({ base: './src/content/blog', pattern: '**/*.md' }),
|
||||||
// Type-check frontmatter using a schema
|
// Type-check frontmatter using a schema
|
||||||
schema: z.object({
|
schema: z.object({
|
||||||
title: z.string(),
|
title: z.string(),
|
|
@ -1,5 +1,5 @@
|
||||||
---
|
---
|
||||||
import { type CollectionEntry, getCollection } from 'astro:content'
|
import { type CollectionEntry, getCollection, render } from 'astro:content'
|
||||||
import Blog from '../../layouts/Blog.astro'
|
import Blog from '../../layouts/Blog.astro'
|
||||||
|
|
||||||
export async function getStaticPaths() {
|
export async function getStaticPaths() {
|
||||||
|
@ -12,7 +12,7 @@ export async function getStaticPaths() {
|
||||||
type Props = CollectionEntry<'blog'>
|
type Props = CollectionEntry<'blog'>
|
||||||
|
|
||||||
const post = Astro.props
|
const post = Astro.props
|
||||||
const { Content } = await post.render()
|
const { Content } = await render(post)
|
||||||
---
|
---
|
||||||
|
|
||||||
<Blog {...post.data}>
|
<Blog {...post.data}>
|
||||||
|
|
Loading…
Reference in a new issue