Astro博客

astro-theme-iris — Astro 博客模板

作者 LemonAdorable

基于 Astro 的博客与知识库主题,在 astro-theme-pure 基础上定制,集成全文搜索、Wikilink 预览与知识图谱。

看看你的网站会是什么样

浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。

3 个预览视图
桌面端首页1 / 3
桌面端截图首屏预览

由服务器浏览器实际访问页面后截取。

全部页面与视图 3

截图用于了解视觉与布局,交互效果请以实际项目为准。

采集于 2026-10-02查看来源

值得关注的模板亮点

从已有项目资料中,快速了解它的特点。

01

基于 FlexSearch 的中英文全文搜索,三栏布局整合结果、预览与滚动标记,支持按日期、标签、类型筛选

02

通过 Tippy.js 实现 Wikilink 多层嵌套预览,并支持反向链接定位

03

使用 D3.js 绘制知识图谱,区分文章、文档、标签、分类节点,可切换局部与全局视图

04

集成 Giscus 评论、Mermaid 图表,以及 MDX 中的 Typst 数学公式与图形渲染

05

基于 astro-theme-pure 定制,主配置集中在 src/site.config.ts

模板详细介绍

Astro Theme Iris 是一个基于 Astro 构建的博客与文档主题,作者将其定位为把博客、个人简介与知识库结合起来的个人知识管理系统。项目基于 astro-theme-pure 定制,仓库采用 Apache-2.0 许可,演示站点为 https://lemonadorable.github.io/。

主题的核心能力集中在知识组织与检索上:搜索使用 FlexSearch 做中英文全文检索,界面为三栏布局,把搜索结果、内容预览与滚动标记放在一起,并支持按日期范围、标签和类型(文章/文档)筛选。Wikilink 借助 Tippy.js 实现类似 Quartz 的多层嵌套预览,并支持反向链接定位。知识图谱使用 D3.js 绘制有向图,区分文章、文档、标签、分类等节点类型,可在当前页面的局部图与全站全局图之间切换,支持拖拽、缩放和点击跳转。此外还集成 Giscus 评论(基于 GitHub Discussions)、Mermaid 图表,以及用于 MDX 中数学公式与图形渲染的 Typst。

使用方式上,README 推荐通过 GitHub 的 Use this template 按钮创建仓库,也支持克隆后本地安装依赖运行;主配置文件位于 src/site.config.ts,可设置站点信息、社交链接与评论系统等。需要注意的限制:作者明确提示项目仍在频繁变动,拉取更新时不要直接用 git pull,而应使用 git fetch 加 git merge --no-commit 手动审查合并结果;页头与自定义选项仍在开发中;待办清单中列出多语言支持、首页简历功能、主题打包与更多文档示例尚未完成。

Astro博客

适合你的项目吗?

适用场景

  • 搭建带有全文检索与双向链接的个人知识库或数字花园
  • 把博客文章与文档类内容放在同一站点中统一管理
  • 为笔记站点增加可视化知识图谱与页面关系浏览
  • 在 MDX 内容中渲染数学公式、图表与 Mermaid 流程图

适合人群

  • 使用 Astro 并希望以模板方式快速起步的博客或知识库作者
  • 需要中英文全文搜索、Wikilink 预览和知识图谱等知识组织功能的站点
  • 能接受项目频繁变动、愿意手动审查合并更新的开发者

上手与定制指南

结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。

  1. 1

    推荐在 GitHub 上点击 Use this template 创建仓库后克隆到本地,也可直接克隆仓库

  2. 2

    安装依赖并启动开发:bun install 或 npm install,然后 bun dev 或 npm run dev

  3. 3

    主配置文件为 src/site.config.ts,可设置站点基本信息、社交链接与评论系统

  4. 4

    作者提示更新时不要直接 git pull,应使用 git fetch 加 git merge --no-commit 手动审查合并结果

  5. 5

    页头与自定义选项仍在开发中,多语言支持、首页简历功能与主题打包尚未完成

查看仓库使用说明

授权与来源资料

使用条件与限制

免费使用 · 保留许可声明

本次收录的是公开仓库中采用 Apache-2.0 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。

使用时需要遵守

  • 允许免费使用、修改、商用和分发;分发时需随附 Apache-2.0 许可证。
  • 修改过的文件需显著标明改动,并保留相关版权、专利、商标及归属声明。
  • 若原项目附有 NOTICE 文件,分发衍生作品时需保留其中适用的归属声明。
  • 许可包含适用的贡献者专利授权;发起许可所述专利诉讼会终止该专利授权,且不授予商标使用权。
  • 代码按现状提供;担保与责任限制以原许可证及适用法律为准。

额外费用与待核对事项

  • 作者要求更新主题时不要直接使用 git pull,而应使用 git fetch 加 git merge --no-commit 手动审查并控制合并结果,以免自动合并覆盖本地自定义内容。
  • 页头与自定义选项仍在开发中,相关功能尚不完整,使用时需注意该部分可能不稳定或未完成。
  • 多语言支持尚未完成,当前待办清单中仍列为未实现功能,站点主要面向中文内容。
  • 首页简历功能尚未实现,属于待办事项,不能依赖该功能作为站点能力。
  • 主题打包与新组件尚未完成,属于待办事项,当前不提供打包后的主题分发形式。
  • 更多文档与示例尚未提供,属于待办事项,使用时可参考的文档和示例有限。
  • 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 Apache-2.0 许可判断。
  • 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
查看原文依据

no-charge, royalty-free, irrevocable copyright license

许可证原文

When pulling updates, please do not use `git pull` directly. Instead, use `git fetch` + `git merge --no-commit` to manually review and control the merge results.

README 原文

Known issues: Header & customize options is still under development (template exposed still).

README 原文

- [ ] English or multi-language support

README 原文

- [ ] Homepage resume feature

README 原文

- [ ] Package theme and new components

README 原文

- [ ] More documentation and examples

README 原文
https://github.com/LemonAdorable/astro-theme-iris/blob/main/LICENSEhttps://github.com/LemonAdorable/astro-theme-iris/blob/main/README.md

DeepSeek 根据仓库许可证和 README 整理 ·2026-10-02。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。

项目核对记录与介绍依据

模板资料

来源平台
GitHub
资料与维护参考分
资料较完整 · 87 / 100
技术栈
Astro
网站类型
博客
这个分数如何计算

本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。

这个项目需要核对什么

记录的仓库更新时间
2026-07-29
截图检查日期
2026-10-02

已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。

目录记录的主要技术栈是 Astro。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。

查看具体选型方法 →

介绍的制作与核对状态

介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。

已完成服务器许可规则与 AI 来源核对;未经过人工编辑审核。

查看当时使用的来源资料

SHA-256: 1acc38deb4d149ae22b589f364655131ad39ecaf4764a60a51054edd86951fb3

2026-10-02T16:47:42.070Z

来源文件 / 仓库
# Astro Theme Iris

English | [简体中文](./README-zh-CN.md)

> [!CAUTION]
> This project is undergoing frequent changes, and automatic merging may overwrite your local customizations. When pulling updates, please do not use `git pull` directly. Instead, use `git fetch` + `git merge --no-commit` to manually review and control the merge results.

<div align="center">
  <img src="./logo.png" alt="Astro Theme Iris Logo" width="200">
</div>

---

## 📸 Screenshots

**Demo Blog**: [https://lemonadorable.github.io/](https://lemonadorable.github.io/)

> [!NOTE]
> Known issues: Header & customize options is still under development (template exposed still).

<div align="center">
  <img src="./index.png" alt="Homepage Showcase" width="100%">
  <p><em>Full-screen homepage with animation effects</em></p>
</div>

<div align="center">
  <img src="./search.png" alt="Search Feature Showcase" width="100%">
  <p><em>Powerful search preview system - supports category filtering, real-time preview, and scroll markers</em></p>
</div>

<div align="center">
  <img src="./function.png" alt="Feature Showcase" width="100%">
  <p><em>Wikilink preview, Graph View, and knowledge graph</em></p>
</div>

---

## 🎨 About Iris Theme

This project is customized based on [astro-theme-pure](https://github.com/cworld1/astro-theme-pure), aiming to combine **blog**, **profile**, and **knowledge base** to create a powerful personal knowledge management system.

### ✨ Core Features

#### 🔍 Powerful Search System

- **FlexSearch Full-Text Search**: High-performance search supporting multiple languages including Chinese and English
- **Three-Column Preview Layout**: Integrated search results, content preview, and scroll markers
- **Multi-Dimensional Filtering**: Filter by date range, tags, and type (article/docs)
- **Real-Time Highlighting**: Real-time search result highlighting with scroll positioning

#### 🔗 Wikilink System

- **Multi-Level Preview**: Uses Tippy.js to implement Quartz-like multi-layer preview functionality
- **Smart Positioning**: Supports backlinks and reverse positioning references
- **Smooth Interaction**: Supports nested previews

#### 🗺️ Knowledge Graph (Graph View)

- **D3.js Directed Graph**: Visualizes relationships between pages
- **Local/Global Views**: View local graph for current page or site-wide global graph
- **Node Types**: Distinguishes between articles, docs, tags, categories, and other types
- **Interactive Operations**: Supports drag, zoom, and click navigation

#### 🎨 UI Optimization

- **Full-Screen Homepage**: Immersive homepage design with animation effects
- **Gradient Background**: Article cards use light purple gradient backgrounds
- **Interactive Animations**: Interactive animation effects for avatars and friend links
- **Responsive Design**: Adapted for desktop and mobile devices

#### 💬 Comment System

- **Giscus Integration**: Comment system based on GitHub Discussions

#### 📊 Mermaid Integration

- **Mermaid Integration**: Mermaid integration for diagramming

#### 🖋️ Typst Integration

- **Typst Support**: Typst integration for high-quality mathematical equations and diagrams rendering in MDX

### 🚀 Quick Start

#### Option 1: Use as a Template (Recommended)

1. Click the **"Use this template"** button at the top of this repository.
2. Clone your new repository to local.
3. Install dependencies and start developing:
   ```shell
   bun install # or npm install
   bun dev     # or npm run dev
   ```

#### Option 2: Manual Installation

```shell
# Clone repository
git clone https://github.com/LemonAdorable/astro-theme-iris.git
cd astro-theme-iris

# Install dependencies
bun install # or npm install
```

### 🔄 Updating Theme

To get the latest features and fixes from the Iris theme:

```shell
# Add upstream remote (only need to do once)
git remote add upstream https://github.com/LemonAdorable/astro-theme-iris.git

# Pull and merge updates from main branch
git fetch upstream main
git merge upstream/main --allow-unrelated-histories
```
> [!TIP]
> The `--allow-unrelated-histories` flag is only required for the first merge if you have an existing repository with a different history. For future updates, a simple `git pull upstream main` will work.

### 📝 Todo

- [ ] English or multi-language support
- [ ] Homepage resume feature
- [ ] Package theme and new components
- [ ] More documentation and examples

### 📚 Repository Structure

```
Iris Theme (LemonAdorable/astro-theme-iris)
  └── main branch (Upstream)
      ↓ (fetch & merge)
Your Blog Repository
  └── main branch (Your content + Iris components)
```

### 🙏 Acknowledgments

This project is based on the following excellent open-source projects:

- **[astro-theme-pure](https://github.com/cworld1/astro-theme-pure)** - Base theme framework
- **[FlexSearch](https://github.com/nextapps-de/flexsearch)** - High-performance full-text search engine
- **[Tippy.js](https://atomiks.github.io/tippyjs/)** - Powerful tooltip library
- **[D3.js](https://d3js.org/)** - Data visualization library
- **[Quartz](https://quartz.jzhao.xyz/)** - Knowledge base theme design concept reference
- **[Obsidian](https://obsidian.md/)** - Wikilink note concept reference

### 📞 Contact

For questions or suggestions, please feel free to contact via email

### 📋 Usage Instructions

#### Search Feature

- Press `Ctrl+K` or `Cmd+K` to open the search box
- Supports Chinese and English full-text search
- Filter by date range, tags, and type
- Click search results to navigate to corresponding pages
- Right preview area supports scroll marker positioning

#### Wikilink Preview

- Use `[[link text]]` or `[[link|display text]]` in articles to create wikilinks
- Hover over wikilinks to preview link content
- Supports multi-level nested previews
- Preview box supports interaction, click links to navigate

#### Knowledge Graph

- Graph View displayed in sidebar on article and doc pages
- Click nodes to navigate to corresponding pages
- Supports dragging nodes to adjust layout
- Click top-right button to view site-wide global graph

### ⚙️ Configuration

Main configuration file is located at `src/site.config.ts`, where you can configure:

- Basic site information (title, description, author, etc.)
- Social links
- Comment system (Giscus/Waline)
- Other theme options

### 📄 License

This project is open source under the [Apache 2.0 License](https://github.com/LemonAdorable/astro-theme-iris/main/LICENSE).

### ⭐ Star History

[![Star History Chart](https://api.star-history.com/svg?repos=LemonAdorable/astro-theme-iris&type=Date)](https://star-history.com/#LemonAdorable/astro-theme-iris&Date)
反馈内容错误

看看同类模板

对比同技术栈与用途的模板,找到更适合的视觉与内容结构。