Astro Zen Blog |一个优雅、极简、强大的博客
介绍 Astro Zen 博客项目
如果你想部署一个自己的静态博客,又不想到处折腾,并且是熟悉的前端技术栈,你可以尝试下:Astro Zen Blog!
Astro Zen Blog 是一个使用 Astro 构建的极简、响应式和 SEO 友好的博客模板。它具有简洁的设计、暗色模式支持和基于 markdown 的内容管理。
特性
- 支持 Markdown/MDX 内容创作
- 简洁的极简设计
- ️ 基于标签的组织方式
- 暗色模式支持
- SEO 优化
- 完全响应式
- 社交媒体集成
- RSS 订阅支持
- 优秀的性能
在线演示: Yujian's blog
安装
克隆仓库:
git clone https://github.com/larry-xue/astro-zen-blog.git
cd astro-zen-blog
安装依赖:
npm install
启动开发服务器:
npm run dev
配置
网站设置
打开
src/config.ts并自定义您的网站设置:export const siteConfig: SiteConfig = {
site: "https://example.com/", // 您的网站 URL
title: "您的博客",
slogan: "探索世界与自我",
description: "在这里写描述",
social: {
github: "https://github.com/username",
linkedin: "https://www.linkedin.com/in/username",
email: "your@email.com",
rss: true,
},
homepage: {
maxPosts: 5, // 显示的最大文章数量
tags: [], // 仅显示包含这些标签的文章
excludeTags: [], // 排除包含这些标签的文章
}
};
首页文章过滤
如果您想要对首页文章进行更多自定义,可以通过更新 src/utils/posts.ts 中的 filterPublishedPosts 函数来自定义显示的文章。
主题
在 tailwind.config.js 中更新主要和次要颜色:
module.exports = {
theme: {
extend: {
colors: {
primary: {
50: '#f2f8f3',
100: '#e6f1e8',
200: '#cde3d2',
300: '#a7cbb0',
400: '#7baf89',
500: '#559469',
600: '#437a54',
700: '#366144',
800: '#2c4d37',
900: '#23402d',
950: '#0d1911',
}
}
}
}
};
编写内容
在
src/content/blog/目录下创建新的博客文章使用以下前置元数据模板:
---
title: "文章标题"
description: "文章简短描述"
date: YYYY-MM-DD
tags: ["标签1", "标签2"]
--- 您的内容写在这里...
构建和部署
构建您的网站:
npm run build
部署选项:
- Cloudflare Pages: 部署到 Cloudflare Pages
项目结构
astro-zen-blog/
├── src/
│ ├── content/
│ │ └── blog/ # 博客文章
│ ├── layouts/ # 页面布局
│ ├── components/ # UI 组件
│ └── config.ts # 网站配置
├── public/ # 静态资源
└── astro.config.mjs # Astro 配置
功能路线图
- 搜索功能
- 评论集成
- ...更多
贡献
欢迎贡献!您可以:
- Fork 这个仓库
- 创建您的功能分支
- 提交一个拉取请求
许可证
该项目基于 MIT 许可证 - 查看 LICENSE 文件了解详情。
Astro Zen Blog |一个优雅、极简、强大的博客的更多相关文章
- Dropplets – 极简的 Markdown 博客平台
Dropplets 是一个简单的博客平台,专注于提供正是你在博客解决方案中需要的.当涉及到基础的博客功能,你真正想要做的是写和发表,而这就是 Dropplets 的过人之处.Dropplets 是一个 ...
- 一个lucene源码分析的博客
ITpub上的一个lucene源码分析的博客,写的比较全面:http://blog.itpub.net/28624388/cid-93356-list-1/
- Salt Stack 官方文档翻译 - 一个想做dba的sa - 博客频道 - CSDN.NET
OSNIT_百度百科 Salt Stack 官方文档翻译 - 一个想做dba的sa - 博客频道 - CSDN.NET Salt Stack 官方文档翻译 分类: 自动运维 2013-04-02 11 ...
- Django学习案例一(blog):五. 开发主页(博客列表展示)
主页是一个“博客列表”页.博客要按发布时间的倒序来排列,每个博客都要包含标题.作者.分类.发布时间的显示(年-月-日 时:分)及节选的正文内容(前 100 个字).点击单独的博客可以进入其详情页. 1 ...
- 8.一个项目实战(下载CSDN博客文章)
专栏地址 ʅ(‾◡◝)ʃ 前言 要写一个下载器,首先要实现一个接口函数,而这个函数可以对请求的数据进行处理也就是爬虫,其次才是写图形化界面 接口的实现 其实CSDN的浏览器页面的接口很复杂,是直接通过 ...
- 把cnblogs变成简书 - cnblogs博客自定义皮肤css样式
吐槽 博客园cnblogs作为老牌的IT技术博客类网站,为广大的开发者提供了非常不错的学习交流平台. 虽然博客内容才是重点,但是如果有赏心悦目的页面不更好吗! cnblogs可以更换博客模板,并且提供 ...
- 《从零开始, 开发一个 Web Office 套件》系列博客目录
这是一个系列博客, 最终目的是要做一个基于HTML Canvas 的, 类似于微软 Office 的 Web Office 套件, 包括: 文档, 表格, 幻灯片... 等等. 对应的Github r ...
- 一个基于Asp.net MVC的博客类网站开源了!
背景说明: 大学时毕业设计作品,一直闲置在硬盘了,倒想着不如开源出来,也许会对一些人有帮助呢,而且个人觉得这个网站做得还是不错了,毕竟是花了不少心思,希望对你有所帮助. github地址:https: ...
- 一个不错的intellj 相关的博客
http://my.oschina.net/lujianing/blog?catalog=3300430
- 一个的unity学习系列的博客
1.http://my.csdn.net/caoboya 2.http://my.csdn.net/OnafioO
随机推荐
- Angular 18+ 高级教程 – Getting Started
前言 这篇主要是教大家如何快速搭建一个 Angular 项目,纯用于学习. Before Starting 开始前,我们需要知道几个小知识. 1. Angular Compilation 游览器支持的 ...
- Rounding
前言 以前写过一篇关于 Rouding 的 decimal, double, float, 但有点杂乱, 这篇做一个整理. Why need rouding? 除法会诞生小数. 甚至会诞生无限小数 ( ...
- EF Core – Get Started 搭建单侧环境
有时候想搭个环境做测试, 又记不住那些 command, 官方教程又啰嗦. git clone 模板又不太好管理, 索性记入在这里吧. 创建项目 dotnet new webapp -o Simple ...
- Nuxt Kit 自动导入功能:高效管理你的模块和组合式函数
title: Nuxt Kit 自动导入功能:高效管理你的模块和组合式函数 date: 2024/9/14 updated: 2024/9/14 author: cmdragon excerpt: 通 ...
- x64汇编——汇编指令
汇编指令 mov dest, src mov move的简称 将src的内容赋值给dest,类似于dest = src [地址值] 中扩号 [ ]里面放的都是内存地址 一个变量的地址值,是它所有字节地 ...
- QT疑难杂症之如何使用自定义模型实现文件系统模型?类似QFileSystemModel,却比QFileSystemModel更好用
简介 本文讨论了QT文件系统模型QFileSystemModel的不足之处,并且讨论了改进目标,如何实现自定义文件系统模型,以及进一步改进的空间. 目录 QFileSystemModel的不足之处 改 ...
- 系统编程-进程-exec系列函数超级详解(带各种实操代码)
我的相关博文: 系统编程-进程-close-on-exec机制 PART1 exec系列函数功能简介 exec系列函数登场 常规操作是先fork一个子进程,然后在子进程中调用exec系列函数执行新的 ...
- PMP——如何区分项目启动会和开踢会?
在PMP考试中非常强调两个重要会议,一个叫做启动会(Initiating Meeting),另一个叫做开踢会议(Kick-off Meeting),俗称两会. 项目启动会的作用是通过发布项目章程来授权 ...
- Kubernetes的Pod调度:让你的应用像乘坐头等舱!
一.Kubernetes 中 Pod 调度的重要性 在 Kubernetes 的世界里,Pod 调度就像是一个繁忙的交通指挥官,负责把小车(也就是我们的 Pod)送到最合适的停车位(节点).调度不仅关 ...
- ArkTS 和仓颉的特性对比与案例
ArkTS和仓颉是两种不同的编程语言,它们各自具有独特的特性和设计目的. ArkTS特性 ArkTS是一种基于TypeScript的编程语言,专门为鸿蒙应用开发而设计.它保留了TypeScript的大 ...