Page Refactoring: Completely refactored anime, timeline, projects, skills, albums, friends, diary, and about pages for better performance and user experience.
Page Toggle Feature: Added page toggle functionality with SEO optimization modules, allowing control over feature page visibility.
New Grid Layout: Introduced new grid article list layout for improved content presentation.
Pio Live2D Integration: Added Pio Live2D character, providing a cute interactive companion to enhance user engagement.
Highly Configurable: Supports detailed configuration in src/config.ts, including model path, position, size, dialogue content, etc., to meet personalized needs.
Seamless Navigation: The "Back to Home" feature now uses the theme's built-in Swup for smooth, no-refresh page transitions.
🆕 v4.3 Update
Anime Page: Redesigned a cuter and more attractive anime page, including anime list, details, and timeline.
Album Page: Restructured the album page using pagination + folder data indexing solution.
🆕 v3.4 Update
New Pages: Added project showcase, skills showcase, and timeline pages to display your work, professional skills, and growth journey.
Dropdown Menu Fix: Resolved the issue of border outlines appearing when clicking dropdown menus, improving interface consistency.
Search Optimization: Enhanced search functionality performance and accuracy.
Footer HTML Injection: Introduced a new feature allowing custom HTML content injection at the bottom of pages, providing greater flexibility.
🆕 v3.3 Update
Mermaid Syntax Support: Added support for Mermaid chart syntax, now you can embed flowcharts, sequence diagrams, Gantt charts, etc. directly in Markdown.
Umami Analytics: Added support for Umami analytics, making it easy to integrate website visit data analysis.
🔧 Component Configuration System Restructuring
Unified Configuration Architecture: Brand new modular component configuration system, supporting dynamic component management and order configuration
Unified Control Switches: Removed independent enable switches for music player and announcement components, unified control through sidebarLayoutConfig
Responsive Layout Adaptation: Components support responsive layouts, automatically adjusting display based on device type
📐 Layout System Optimization
Dynamic Sidebar Position Adjustment: Support for left/right sidebar switching, with automatic layout adaptation
Intelligent Article Directory Positioning: When sidebar is on the right, article navigation automatically moves to the left, providing a better reading experience
Image optimization with PhotoSwipe gallery integration
SEO optimization including sitemaps and meta tags
Performance optimization with lazy loading and caching
Comment system with Twikoo integration
🚀 Quick Start
📦 Installation
Clone the repository:
git clone https://github.com/matsuzaka-yuki/mizuki.git
cd mizuki
Install dependencies:
# Install pnpm if not already installed
npm install -g pnpm
# Install project dependencies
pnpm install
Configure your blog:
Edit src/config.ts to customize blog settings
Update site information, theme colors, banner images, and social links
Configure feature page functionality
Start the development server:
pnpm dev
Your blog will be available at http://localhost:4321
📝 Content Management
Create new posts:pnpm new-post <filename>
Edit posts: Modify files in src/content/posts/
Customize special pages: Edit files in src/content/spec/
Add images: Place images in src/assets/ or public/
🚀 Deployment
Deploy your blog to any static hosting platform:
Vercel: Connect your GitHub repository to Vercel
Netlify: Deploy directly from GitHub
GitHub Pages: Use the included GitHub Actions workflow
Cloudflare Pages: Connect your repository
Before deployment, update the site URL in astro.config.mjs.
Umami API key (optional): If you plan to use Umami analytics, we recommend setting the environment variable UMAMI_API_KEY on your deployment platform, or alternatively configure the key directly in the project's configuration files.
📝 Post Frontmatter Format
---title:MyFirstBlogPostpublished:2023-09-09description:Thisisthefirstpostofmynewblog.image:./cover.jpgtags: [tag1, tag2]
category:Frontenddraft:falsepinned:falselang:en# Only set when article language differs from site language in config.ts---
Frontmatter Field Descriptions
title: Article title (required)
published: Publication date (required)
description: Article description for SEO and previews
image: Cover image path (relative to article file)
tags: Array of tags for categorization
category: Article category
draft: Set to true to hide article in production
pinned: Set to true to pin article to top
lang: Article language (only set when different from site default)
Pinned Articles Feature
The pinned field allows you to pin important articles to the top of your blog list. Pinned articles will always appear before regular articles regardless of their publication date.
Usage:
pinned:true# Pin this article to the toppinned:false# Regular article (default)
Sorting Rules:
Pinned articles appear first, sorted by publication date (newest first)
Regular articles follow, sorted by publication date (newest first)
🧩 Markdown Extensions
Mizuki supports enhanced features beyond standard GitHub Flavored Markdown:
📝 Enhanced Writing
Callouts: Create beautiful annotation boxes using > [!NOTE], > [!TIP], > [!WARNING], etc.
Math Formulas: Write LaTeX math formulas using $inline$ and $$block$$ syntax
Code Highlighting: Advanced syntax highlighting with line numbers and copy buttons
GitHub Cards: Embed repository cards using ::github{repo="user/repo"}
🎨 Visual Elements
Image Gallery: Automatic PhotoSwipe integration for image viewing
Yukina - Thanks for providing design inspiration and creativity that helped shape this project. Yukina is an elegant blog template that demonstrates excellent design principles and user experience.
⭐ If you find this project helpful, please consider giving it a star!