AstroBlog

geauxcode.dev — Astro Blog Template

By GeauxWeisbeck4

A personal blog project built on the Astro Solitude theme, using Astro with Markdown/MDX authoring and supporting static deployment.

Explore the design

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

1 previews
Author preview
Author-provided previewTop of page

Preview provided in the project README.

One original preview is available. Open the full image to inspect the design.

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-09-30View source

What stands out

A quick read of the recorded project description.

01

Built on the Astro Solitude theme, using Astro to build a static blog

02

Content written in Markdown / MDX, with Shiki syntax highlighting and KaTeX math formulas

03

Article management capabilities including categories, tags, series, archives, pagination, pinning, drafts, custom URLs, and aliases

04

Built-in light/dark mode, image lightbox, keyboard shortcuts, context menu, and a music capsule that continues playing across pages

05

Search supports local search, Algolia, DocSearch, and provides RSS and sitemap

06

Comments can integrate Twikoo, Waline, Valine, Artalk, Giscus, loaded according to configuration

Template Details

This is GeauxWeisbeck4's personal blog repository geauxcode.dev, generated from the Astro Solitude theme (author @everfu). The project is built with Astro, content is written in Markdown / MDX, and it can output static pages and be deployed to hosting platforms or self-hosted servers.

The theme itself provides fairly complete content organization and reading features: article cards, recommendations, sidebar, table of contents, related articles, copyright notice, and donation links; on the writing side it supports Markdown / MDX, 41 content components, Shiki syntax highlighting, and KaTeX math formulas. Article management covers categories, tags, series, archives, pagination, pinning, drafts, custom URLs, and aliases. There are also pages for About, Links, Equipment, Music, guestbook, short posts, latest comments, and 404.

For interaction and integrations, the theme includes light/dark mode, image lightbox, keyboard shortcuts, context menu, and a music capsule that continues playing across pages; search supports local search, Algolia, DocSearch, and provides RSS and sitemap; comments can integrate Twikoo, Waline, Valine, Artalk, Giscus, loaded according to configuration. The interface defaults to English, with built-in translations for Simplified Chinese, Traditional Chinese, and Spanish.

The repository's sample articles and pages, and local search, are enabled by default; comments, comment aggregation, and online music are disabled under empty service identifiers. Before use, replace sample content, images, and site identity information, and configure your own external services. Switching the interface language will not translate articles or custom navigation.

AstroBlog

Is it right for your project?

Use Cases

  • Building a personal technical blog or note site and writing continuously with Markdown / MDX
  • Needing categories, tags, series, archives, and related articles to organize long-term content
  • Wanting to output static files and deploy to hosting platforms or self-hosted servers
  • Needing to integrate a comment system, RSS, sitemap, or Algolia / DocSearch search
  • Needing reading and interaction details such as light/dark mode, image lightbox, and music capsule

Suitable For

  • Personal bloggers familiar with Astro and Markdown / MDX
  • Developers who want to publish content statically and self-host or deploy to static hosting platforms
  • Site maintainers who need a multilingual interface (English, Simplified Chinese, Traditional Chinese, Spanish)
  • Users willing to configure external services such as comments, search, and music themselves

Getting started & customization

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

  1. 1

    Requires Node.js 22.12.0+ and pnpm, and use the pnpm version specified by packageManager in package.json

  2. 2

    After cloning the repository, run pnpm install --frozen-lockfile and pnpm dev to preview the sample content

  3. 3

    Edit src/site.config.ts to set the site URL, title, author, navigation, and theme options; subdirectory deployment requires setting base

  4. 4

    Sample articles and pages, and local search, are enabled by default; comments, comment aggregation, and online music are disabled under empty service identifiers, and you need to integrate your own services according to the integration guide

  5. 5

    Before publishing, replace sample content, images, and site identity information; switching the interface language will not translate articles or custom navigation

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

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

Must comply with when using

  • Free use, modification, commercial use, and distribution are permitted; when distributing, include the Apache-2.0 license.
  • Modified files must be prominently marked as changed, and relevant copyright, patent, trademark, and attribution notices must be retained.
  • If the original project includes a NOTICE file, applicable attribution notices in it must be retained when distributing derivative works.
  • The license includes an applicable contributor patent grant; initiating patent litigation as described in the license terminates that patent grant, and no trademark use rights are granted.
  • 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

  • Comments, comment aggregation, and online music are disabled by default; you need to integrate third-party services such as Twikoo, Waline, Valine, Artalk, Giscus yourself and configure the corresponding service identifiers, which may involve external accounts or fees.
  • Algolia and DocSearch are third-party search services; enabling them requires registering an account and providing API keys yourself, and may be subject to their terms of service and fees.
  • Before publishing, you must replace sample articles, images, and site identity information; sample content and images should not be used directly for a formal site.
  • Switching the interface language only affects built-in interface text and will not translate article content or custom navigation.
  • Running and building require Node.js 22.12.0 or later and the pnpm package manager.
  • When modifying or redistributing, you must retain the Apache-2.0 license and copyright notices, and mark modified files.
  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code's Apache-2.0 license.
  • External services such as domain, hosting, database, payment, or AI may incur additional charges.
View Original Text Basis

no-charge, royalty-free, irrevocable copyright license

Original License Text

Comments, comment aggregation, and online music are disabled with empty service identifiers. Follow the [integration guide](docs/integrations.md) to connect your own services.

Original README

Search and feeds**: local search, Algolia, DocSearch, RSS, and sitemap.

Original README

Replace sample content, images, and site identity before publishing.

Original README

Changing the interface locale does not translate posts or custom navigation.

Original README

Install Node.js **22.12.0+** and pnpm.

Original README

Retain the applicable license and copyright notices when modifying or redistributing the project.

Original README
https://github.com/GeauxWeisbeck4/geauxcode.dev/blob/main/LICENSEhttps://github.com/GeauxWeisbeck4/geauxcode.dev/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-01. 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
GitHub
Documentation and maintenance reference score
Partly documented · 68 / 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-29
Screenshot last checked
2026-10-01

No demo link is recorded. Use the repository instructions to evaluate the project locally; the screenshot alone cannot establish interactive behavior.

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: 7d9dfc4e1eceb048153aa6616827aaa86af8dd7701459b65da62b777c12adb59

2026-10-01T14:41:03.816Z

Source file / repository
English 丨 [简体中文](README.zh-CN.md)

<div align="center">

<img src="public/img/logo.png" width="120" height="120" alt="Astro Solitude paper airplane logo" />

# Astro Solitude

A clean, elegant, feature-rich blog theme for Astro.

Build your personal blog with static pages, Markdown / MDX, light and dark modes, and a rich collection of content components.

[![Astro](https://img.shields.io/badge/Astro-7-BC52EE?logo=astro&logoColor=white)](https://astro.build/)
[![Node.js](https://img.shields.io/badge/Node.js-%3E%3D22.12.0-5FA04E?logo=node.js&logoColor=white)](package.json)
[![License](https://img.shields.io/badge/license-Apache--2.0-FF5531)](LICENSE)
[![Checks](https://github.com/everfu/astro-solitude/actions/workflows/check.yml/badge.svg)](https://github.com/everfu/astro-solitude/actions/workflows/check.yml)
[![Stars](https://img.shields.io/github/stars/everfu/astro-solitude)](https://github.com/everfu/astro-solitude/stargazers)

[Use this template](https://github.com/everfu/astro-solitude/generate) · [Documentation](docs/README.md) · [Quick start](#quick-start) · [Configuration](docs/configuration.md) · [Components](docs/components.md) · [Deployment](docs/deployment.md) · [Report an issue](https://github.com/everfu/astro-solitude/issues)

</div>

![Astro Solitude desktop homepage preview](docs/screenshots/home-desktop.png)

## Features

- **Layout and reading**: responsive post cards, recommendations, sidebar, table of contents, related posts, copyright notices, and donation links.
- **Writing**: Markdown / MDX, 41 content components, Shiki syntax highlighting, and KaTeX math rendering.
- **Post management**: categories, tags, series, archives, pagination, pinned posts, drafts, custom URLs, and aliases.
- **Special pages**: About, Links, Equipment, Music, Message Board, short posts, Recent Comments, and 404.
- **Interactions**: light and dark modes, image lightbox, keyboard shortcuts, context menu, and a music capsule that persists across page navigation.
- **Search and feeds**: local search, Algolia, DocSearch, RSS, and sitemap.
- **Comments**: Twikoo, Waline, Valine, Artalk, and Giscus, loaded according to configuration.
- **Interface languages**: English by default, with Simplified Chinese, Traditional Chinese, and Spanish.
- **Static deployment**: generate static files for a hosting platform or your own server.

## Quick start

### 1. Get the project

Install Node.js **22.12.0+** and pnpm. Use the pnpm version specified in the `packageManager` field of [package.json](package.json).

Click [Use this template](https://github.com/everfu/astro-solitude/generate) to create an independent repository, then clone your copy (replace `YOUR_NAME` and `my-blog`):

```sh
git clone https://github.com/YOUR_NAME/my-blog.git
cd my-blog
pnpm install --frozen-lockfile
pnpm dev
```

Open the local URL shown in your terminal to preview the theme and sample content.

### 2. Configure your site

Edit [`src/site.config.ts`](src/site.config.ts) to set your site URL, title, author, navigation, and theme options. Here is a minimal configuration:

```ts
import { defineSolitudeConfig } from './lib/config';

export default defineSolitudeConfig({
  site: 'https://example.com',
  title: 'My blog',
  description: 'Notes, stories, and discoveries.',
  locale: 'en',
  author: { name: 'Your name' },
});
```

For a site hosted under a subdirectory, also set `base`, for example `base: '/blog/'`. See [Configuration](docs/configuration.md) for all options.

The template includes sample posts and pages with local search enabled. Comments, comment aggregation, and online music are disabled with empty service identifiers. Follow the [integration guide](docs/integrations.md) to connect your own services. Replace sample content, images, and site identity before publishing. Changing the interface locale does not translate posts or custom navigation.

### 3. Start writing

Create a Markdown or MDX file in `src/content/posts/`, such as `hello-world.md`:

```md
---
title: Hello, world
date: 2026-09-11
description: My first post.
tags: [Life]
---

Start your story here.
```

The default URL is `/p/hello-world/`. Use `slug`, `url`, and `aliases` to customize addresses. Set `draft: true` for drafts, or `home: false` to hide a post from homepage areas while keeping it in archives, search, RSS, and direct links.

See [Front matter](docs/writing.md#front-matter) and [MDX components](docs/components.md) for more writing options.

### 4. Build and deploy

```sh
pnpm build
pnpm preview
```

Publish the generated `dist/` directory to your hosting platform. Set the build command to `pnpm build` and the output directory to `dist`. Use `pnpm install --frozen-lockfile` during dependency installation.

See [Deployment](docs/deployment.md) for hosting instructions and path configuration.

## Documentation

The template, sample content, and documentation use English by default. Built-in interface translations are available in Simplified Chinese, Traditional Chinese, and Spanish. Start with the [documentation index](docs/README.md).

| Guide                                      | Contents                                                  |
| ------------------------------------------ | --------------------------------------------------------- |
| [Getting started](docs/getting-started.md) | Create a template copy, install, write your first post    |
| [Configuration](docs/configuration.md)     | Site identity, appearance, navigation, defaults           |
| [Writing](docs/writing.md)                 | Front matter, drafts, categories, URLs, feeds             |
| [Pages](docs/pages.md)                     | About, links, equipment, short updates                    |
| [Components](docs/components.md)           | Usage, parameters, and examples for all 41 MDX components |
| [Integrations](docs/integrations.md)       | Comments, music, external search                          |
| [Deployment](docs/deployment.md)           | GitHub Pages, static hosts, subpaths                      |
| [Hugo import](docs/migration.md)           | Preview, export, verify migrated content                  |
| [FAQ](docs/faq.md)                         | Troubleshooting and theme updates                         |

<details>
<summary>More previews: dark mode and mobile reading</summary>

![Dark homepage](docs/screenshots/home-desktop-dark.png)
![Mobile article](docs/screenshots/post-mobile-dark.png)

</details>

## Project structure

```text
astro-solitude/
├── public/                # Images, fonts, and other static assets
├── src/
│   ├── components/        # Theme and MDX components
│   ├── content/
│   │   ├── posts/         # Blog posts
│   │   └── pages/         # Custom pages
│   ├── data/              # About, links, equipment, and short-post data
│   ├── layouts/           # Page layouts
│   ├── pages/             # Astro routes
│   ├── styles/custom.css  # Custom styles
│   └── site.config.ts     # Site configuration
├── docs/                  # Documentation
└── astro.config.mjs       # Astro configuration
```

## Contributing

Use [Issues](https://github.com/everfu/astro-solitude/issues) for bug reports and suggestions. [Pull requests](https://github.com/everfu/astro-solitude/pulls) improving the theme, documentation, and translations are welcome. Include reproduction steps, your environment, and relevant configuration when reporting a problem.

Run these checks before submitting changes:

```sh
pnpm docs:check
pnpm check
pnpm build
pnpm test
```

For changes to page interactions, also run the browser tests:

```sh
pnpm build:fixture
pnpm exec playwright install chromium
pnpm test:e2e
```

Browser tests use an isolated fixture site. Mocked third-party tests do not establish that live services work. See the [development validation report](docs/parity.md) for test coverage and source comparisons.

## License

[Apache-2.0](LICENSE) License © 2026–present [everfu](https://github.com/everfu). Retain the applicable license and copyright notices when modifying or redistributing the project.
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.