fuz_blog
blog software from scratch with SvelteKit
🪧
blog
Declare your blogs in src/routes/blogs.ts — one entry per blog, each with a route dirname and feed metadata:
// src/routes/blogs.ts
import type {BlogConfig} from '@fuzdev/fuz_blog/blog.ts';
export const blogs: Array<BlogConfig> = [
{
dirname: 'blog',
feed: {
title: 'my blog',
home_page_url: 'https://www.example.com/blog',
// ...the rest of the feed metadata
},
},
]; To enable your generated feed.xml, include it as a link in your
layout:
<!-- src/routes/+layout.svelte -->
<script lang="ts">
import {blog_feed_context} from '@fuzdev/fuz_blog/blog.ts';
import {feed} from '$routes/blog/feed.ts';
blog_feed_context.set(feed);
</script>
<svelte:head>
<title>(your title here)</title>
<link
rel="alternate"
type="application/atom+xml"
title="Atom"
href={feed.atom.feed_url}
/>
</svelte:head> With more than one blog, set each blog's feed in its own src/routes/<dirname>/+layout.svelte so its pages read the right context.
Create a new post
$ gro post "Some post title"
$ gro post --help Update an existing post
$ gro update_post 1
$ gro update_post --help