缘起
日常工作中总会遇到一些卡了很久才解决的技术问题,解决之后就忘了。下次再碰到又得重新搜一遍。所以决定建一个博客,把这些过程记下来,利己利人。
技术选型
博客基于 Astro 构建,选它的原因很简单:
- 原生支持 Markdown,直接写
.md文件即可 - 内置 Shiki 代码高亮,效果和 VS Code 一致
- 构建产物是纯静态 HTML,部署到任何地方都行
一个简单的示例
文章里贴代码很常见,语法高亮直接可用。下面是一段 Rust 代码:
fn main() {
let numbers: Vec<i32> = (1..=100).collect();
let sum: i32 = numbers.iter()
.filter(|&&x| x % 2 == 0)
.map(|x| x * x)
.sum();
println!("Sum of squares of even numbers: {}", sum);
}
再比如一段 TypeScript:
interface Post {
slug: string;
title: string;
date: string;
description?: string;
tags?: string[];
}
function sortByDate(posts: Post[]): Post[] {
return posts.toSorted(
(a, b) => new Date(b.date).getTime() - new Date(a.date).getTime()
);
}
Shell 命令也常用:
# 本地启动开发服务器
npm run dev
# 构建生产版本
npm run build
写作流程
- 在
content/目录下新建<slug>.md - 顶部填写 frontmatter(标题、日期、描述、标签)
- 正文用 Markdown 写,代码块用三个反引号包裹并标注语言
git push之后自动部署上线
后续计划
- 坚持写下去
种一棵树最好的时间是十年前,其次是现在。