AstroBlog

fumika — Astro Blog Template

By iyanarmanda

Fumika is a static blog template built with Astro, heavily modified from Fuwari, offering light and dark modes, responsive layout, Pagefind search, RSS, and Giscus comments.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

3 previews
Desktop homepage1 / 3
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 3

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-02View source

What stands out

A quick read of the recorded project description.

01

Static blog template built with Astro, heavily modified from Fuwari

02

Supports light and dark modes, responsive layout, and page transition animations

03

Built-in Pagefind search, RSS subscription, table of contents, and i18n translations

04

Comments via Giscus, Google Analytics integrated via Partytown

05

Markdown extensions include admonitions, GitHub repository cards, Expressive Code code blocks, and Mermaid diagrams

06

MIT License, free to use, modify, commercialize, and distribute

Template Details

Fumika is a static blog template built with Astro, with significant changes made by author iyanarmanda on top of Fuwari. The repository README states that its tech stack includes Astro, Svelte, Tailwind CSS, and SCSS, and lists light and dark modes, responsive design, smooth animations and page transitions, customizable themes and banners, Pagefind search, table of contents, RSS, Meta and Open Graph tags, i18n translations, Giscus comments, and Google Analytics integrated via Partytown.

On the content side, beyond Astro's default support for GitHub Flavored Markdown, the template also provides admonitions, GitHub repository cards, enhanced code blocks based on Expressive Code, Mermaid diagrams, and typographic features; these extended syntaxes have corresponding example pages on the demo site. Articles use frontmatter to define title, publication date, description, cover image, tags, categories, ogImage, and draft status.

For usage, the README recommends generating a new repository from the template or forking it, installing dependencies locally with pnpm, customizing the blog via src/config.ts, creating posts with pnpm new-post, and modifying the site configuration in astro.config.mjs before deployment; it can be deployed to platforms such as Netlify and GitHub Pages. Scaffolding commands such as npm create fumika mentioned in the README are marked as "soon" and are not yet available.

Regarding licensing, the repository uses the MIT License, allowing free use, modification, commercial use, and distribution of this version of the code, provided that the copyright notice and license notice are retained when distributing. Third-party assets such as demo images, fonts, and icons, as well as external services like domains and hosting, must be verified separately or may incur costs.

AstroBlog

Is it right for your project?

Use Cases

  • Building a personal tech blog or writing site
  • Needing static output and deployment to platforms such as Netlify and GitHub Pages
  • Wanting to use admonitions, Mermaid diagrams, and enhanced code blocks in Markdown
  • Needing common blog features such as light and dark modes, search, RSS, and comments

Suitable For

  • Developers familiar with Astro or willing to configure it by following the README steps
  • Individual authors who write in Markdown and need a static blog
  • Blogs that need multilingual interfaces and content such as Chinese and English
  • Projects that accept using pnpm as the package manager

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    After generating a new repository from the template or forking it, clone it locally and run pnpm install to install dependencies

  2. 2

    Edit src/config.ts to customize the blog, and use pnpm new-post <filename> to create posts

  3. 3

    Before deployment, modify the site configuration in astro.config.mjs

  4. 4

    Scaffolding commands such as npm create fumika in the README are marked as soon and are not yet available

  5. 5

    Third-party assets such as demo images, fonts, and icons must be verified under their respective licenses; external services such as hosting may be charged separately

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the MIT License in the public repository; the free scope is the code of this version and does not mean that external services or third-party assets are free.

Must comply with when using

  • Free use, modification, commercial use, and distribution of this version of the code are permitted.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the complete MIT License notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • The comment feature depends on the external Giscus service; Discussions must be enabled in the GitHub repository and the Giscus app configured. Comment data is hosted on GitHub, and the corresponding account and repository setup must be completed before use.
  • The Google Analytics integration requires you to provide your own GA tracking ID and accept Google's terms of service; data is collected by Google and is an external service dependency.
  • Deployment requires third-party hosting platforms such as Netlify and GitHub Pages, which may involve account registration and the platform's own terms of service or fees.
  • Local development requires the pnpm package manager to be installed in advance; if not installed, it must be installed globally via npm.
  • Scaffolding commands such as npm create fumika in the README are marked as soon and are not yet available; currently the template can only be used by generating a repository or forking.
  • Demo images, fonts, icons, and other third-party assets must be verified under their respective licenses and cannot be judged solely by the code's MIT License.
  • External services such as domains, hosting, databases, payments, or AI may incur additional charges.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

Comment feature with [Giscus](https://giscus.app/)

Original README

Google Analytics using [Partytown](https://partytown.qwik.dev/)

Original README

Deploy your blog to Netlify, GitHub Pages, etc.

Original README

Install [pnpm](https://pnpm.io) `npm install -g pnpm` if you haven't.

Original README

Or run one of the following commands (*soon*)

Original README
https://github.com/iyanarmanda/fumika/blob/main/LICENSE.txthttps://github.com/iyanarmanda/fumika/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-02. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
Astro Themes
Documentation and maintenance reference score
More documented · 87 / 100
Technologies
Astro
Website type
Blog
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2026-09-28
Screenshot last checked
2026-10-02

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Astro as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Automatically checked against source and license rules; no manual editorial review.

Inspect the recorded source material

SHA-256: 4e59ae45c81772dddbddfbe5266ae6e233d0a18137331d1473e5717dfb866357

2026-10-02T08:10:20.399Z

Source file / repository
# Fumika🐈
![Node.js >= 22](https://img.shields.io/badge/node.js-%3E%3D20-brightgreen) 
![pnpm >= 11](https://img.shields.io/badge/pnpm-%3E%3D9-blue) 
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fiyanarmanda%2Ffumika.svg?type=shield&issueType=license)](https://app.fossa.com/projects/git%2Bgithub.com%2Fiyanarmanda%2Ffumika?ref=badge_shield&issueType=license)

A clean, minimalist, and modern, static blog template built with [Astro](https://astro.build). **Fumika** is heavily modified from [Fuwari](https://github.com/saicaca/fuwari).

[**Live Demo**](https://fumika-demo.netlify.app)

**Preview**:

Light Mode:
![Preview Image Light Mode](https://raw.githubusercontent.com/iyanarmanda/resource/main/fumika/home-light.png)

Dark Mode:
![Preview Image Dark Mode](https://raw.githubusercontent.com/iyanarmanda/resource/main/fumika/home-dark.png)

## Tech Stacks

- [Astrojs v7](https://astro.build)
- [Svelte v5](https://svelte.dev/)
- [Tailwind CSS v4](https://tailwindcss.com) 
- [SCSS](https://sass-lang.com/)

## Features

- [x] Smooth animations and page transitions
- [x] Light / dark mode
- [x] Responsive design
- [x] Customizable theme, banner, and other components
- [x] Search functionality with [Pagefind](https://pagefind.app/)
- [x] [Markdown extended features](https://github.com/iyanarmanda/fumika?tab=readme-ov-file#-markdown-extended-syntax)
- [x] Table of contents
- [x] RSS feed
- [x] Meta and Open Graph Tag
- [x] i18n translation
- [x] Comment feature with [Giscus](https://giscus.app/)
- [x] Google Analytics using [Partytown](https://partytown.qwik.dev/)

*See upcoming features in [ROADMAP](https://github.com/iyanarmanda/fumika/blob/main/ROADMAP.md)

### Markdown Extended Features

In addition to Astro's default support for GitHub Flavored Markdown ([Docs](https://github.github.com/gfm/)), several extra Markdown features are included:

- Admonitions ([Preview and Usage](https://fumika-demo.netlify.app/posts/markdown-extended/#admonitions))
- GitHub repository cards ([Preview and Usage](https://fumika-demo.netlify.app/posts/markdown-extended/#github-repository-cards))
- Enhanced code blocks with Expressive Code ([Preview](https://fumika-demo.netlify.app/posts/expressive-code/) / [Docs](https://expressive-code.com/)) 
- Mermaid Diagram ([Preview](https://fumika-demo.netlify.app/posts/mermaid/) / [Docs](https://mermaid.js.org/))
- Typography features ([Preview and Usage](https://fumika-demo.netlify.app/posts/markdown-extend/#typography-features))

## Getting Started

1. Create your blog repository:
    - [Generate a new repository](https://github.com/iyanarmanda/fumika/generate) from this template or fork this repository.
    - Or run one of the following commands (*soon*):
       ```sh
       npm create fumika@latest
       yarn create fumika
       pnpm create fumika@latest
       bun create fumika@latest
       deno run -A npm:create-fumika@latest
       ```
2. To edit your blog locally, clone your repository, run `pnpm install` to install dependencies.
    - Install [pnpm](https://pnpm.io) `npm install -g pnpm` if you haven't.
3. Edit the config file `src/config.ts` to customize your blog.
4. Run `pnpm new-post <filename>` to create a new post and edit it in `src/content/posts/`.
5. Deploy your blog to Netlify, GitHub Pages, etc. following [the guides](https://docs.astro.build/en/guides/deploy/). You need to edit the site configuration in `astro.config.mjs` before deployment.

## Frontmatter of Posts

```yaml
---
title: My First Blog Post
published: 2023-09-09
description: This is the first post of my new Astro blog.
image: ./cover.jpg
tags: [Foo, Bar]
category: Front-end
ogImage: /media/images/cover.webp   # by default is empty and use `image` frontmatter if it from public directories or url.
draft: false
---
```

## Commands

All commands are run from the root of the project, from a terminal:

| Command                    | Action                                                                   |
|:---------------------------|:-------------------------------------------------------------------------|
| `pnpm install`             | Installs dependencies                                                    |
| `pnpm dev`                 | Starts local dev server at `localhost:4321`                              |
| `pnpm build`               | Build your production site to `./dist/`                                  |
| `pnpm preview`             | Preview your build locally, before deploying                             |
| `pnpm check`               | Run checks for errors in your code                                       |
| `pnpm format`              | Format your code using **Biome**                                         |
| `pnpm lint`                | Lint your code using **Biome**                                           |
| `pnpm new-post <filename>` | Create a new post                                                        |
| `pnpm astro ...`           | Run CLI commands like `astro add`, `astro check`                         |
| `pnpm astro --help`        | Get help using the Astro CLI                                             |
| `pnpm test`                | Running unit testing using **Vitest**                                    |

## License

This project is licensed under the MIT License.

Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.