An Astro-based blog starter template, with the repository automatically synced from the main Chirping Astro repository
chirping-astro-starter — Astro Starter Template
By kannansuresh
An Astro starter template for the Chirping Astro theme, with built-in multilingual support, Tailwind CSS, daisyUI, Pagefind search, Giscus comments, Mermaid diagrams, and KaTeX math, plus a GitHub Pages deployment workflow.
Explore the design
Compare the page layouts and mobile experience. Open any screenshot for a closer look.
Actual screenshot captured by the server browser.
All pages & views 3
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
English and French bilingual content structures by default, switchable to single-language mode via configuration
Integrates Tailwind CSS, daisyUI, Pagefind search, Giscus comments, Mermaid diagrams, and KaTeX math
Includes a GitHub Actions workflow that builds and deploys to GitHub Pages after pushes to the main branch
Site title, author, navigation, social links, avatar, and favicon are modified centrally in configuration files and asset directories
Extended features such as comments and social links are enabled as needed through optional environment variables
Template Details
This is a starter template for the Chirping Astro blog theme. The repository is automatically synced from the main repository and is intended for quickly setting up an Astro-based blog site. The template provides English and French bilingual content structures by default, including sample posts and bilingual privacy policy pages, and can be switched to single-language mode via configuration.
In terms of features, the template integrates Tailwind CSS and daisyUI for styling, Pagefind for site search, Giscus for comments based on GitHub Discussions, Mermaid for drawing diagrams, and KaTeX for rendering mathematical formulas. The site title, author, navigation, social links, avatar, favicon, and default OG image can all be modified in src/config.ts or the corresponding asset directories.
For deployment, the repository includes a GitHub Actions workflow that builds the site on pushes to the main branch and automatically deploys it once GitHub Pages is enabled; the workflow can automatically detect custom domains and subpaths. Extended features such as comments and social links are enabled as needed through environment variables. All variables are optional, and the site can be built and deployed with zero configuration.
Usage limitations: this starter repository is automatically synced, so PRs should not be submitted here; issues and contributions should go to the main repository. Third-party assets such as demo images, fonts, and icons must be checked separately for licensing. External services such as domains and hosting may incur costs.
Is it right for your project?
Use Cases
- Quickly setting up a personal blog or technical writing site with Astro
- Blog projects that need multilingual (English/French) content structures
- Static sites that want integrated site search, comments, diagrams, and math formulas
- Repositories that automatically deploy blogs via GitHub Pages
Suitable For
- Developers familiar with Astro or willing to configure it according to the README
- Individual authors who need a multilingual blog starter template
- Users planning to host their site on GitHub Pages
- Projects that need Markdown/MDX writing with search, comments, diagrams, and formula capabilities
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
It is recommended to create the project with bunx create-astro@latest --template kannansuresh/chirping-astro-starter, or clone the repository directly and run bun install
- 2
Edit src/config.ts to set the site title, author, and social links, and copy .env.example to .env to fill in variables
- 3
Replace avatar.svg, favicon.svg, and og-default.svg under src/assets/images/site/, and write posts in src/content/posts/en/
- 4
Before deployment, set Source to GitHub Actions in the repository Settings → Pages; if the first run occurs before Pages is enabled, the workflow must be triggered again
- 5
To enable comments, install the Giscus app and obtain parameters from giscus.app, then enable it through the github-pages environment variables
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis 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
- The code of this version may be used, modified, used commercially, and distributed for free.
- When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full 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
- Demo images, fonts, icons, and other third-party assets must be checked 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.
- This starter repository is automatically synced from the main repository, so PRs should not be submitted here; changes will be overwritten on the next sync. Issue reports and contributions should go to the main repository.
- Enabling comments requires installing the Giscus app in the repository and filling in repository information on giscus.app to obtain parameters, which is a configuration step that depends on external services and accounts.
- Deploying to GitHub Pages requires setting the Pages source to GitHub Actions in the repository settings, which depends on the GitHub platform service.
- If GitHub Pages is not enabled, the workflow only builds and skips the deployment step; Pages must be enabled first to publish the site.
View Original Text Basis
Permission is hereby granted, free of charge
Original License Text
> **This starter repository is automatically synced from the [main Chirping Astro repository](https://github.com/kannansuresh/chirping-astro).** Please do not open pull requests here — changes will be overwritten on the next sync.
Original README
1. Install the [Giscus app](https://github.com/apps/giscus) on your repo. 2. Go to [giscus.app](https://giscus.app), fill in your repo details, and copy the generated values.
Original README
Go to your repo **Settings → Pages → Source** and select **GitHub Actions**.
Original README
https://github.com/kannansuresh/chirping-astro-starter/blob/main/LICENSEhttps://github.com/kannansuresh/chirping-astro-starter/blob/main/README.md> If Pages is not enabled yet, the workflow still builds but skips the deploy step.
Original README
Compiled by DeepSeek based on repository license and README ·2026-10-04. 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
- More documented · 83 / 100
- Technologies
- Astro
- Website type
- Starter
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-08-02
- Screenshot last checked
- 2026-10-04
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.
Review declaration: [email protected] · 2026-10-05
Inspect the recorded source material
SHA-256: 680a7f370d04e09518c00245f9594b9ffe9bbf1c39316976cab3fdcc2518f454
2026-10-04T21:20:22.585Z
Source file / repository# Chirping Astro Starter A minimal starter template for [Chirping Astro](https://github.com/kannansuresh/chirping-astro) — a Chirpy-inspired, multilingual **Astro v7** blog theme with **Tailwind CSS v4**, **daisyUI v5**, **Pagefind** search, **Giscus** comments, **Mermaid** diagrams, and **KaTeX** math. > **Live demo:** [https://kannansuresh.github.io/chirping-astro](https://kannansuresh.github.io/chirping-astro) ## Quick Start ### Option 1: Astro CLI (recommended) ```bash bunx create-astro@latest --template kannansuresh/chirping-astro-starter ``` The wizard will prompt you for a project name, install dependencies, and initialize git. ### Option 2: Clone directly ```bash git clone https://github.com/kannansuresh/chirping-astro-starter.git my-blog cd my-blog bun install ``` ### Start dev server ```bash bun dev ``` Open [http://localhost:4321](http://localhost:4321) to see your site. ## Configuration 1. Edit `src/config.ts` to set your site title, author name, and social links. 2. Copy `.env.example` to `.env` and fill in your values. 3. Replace `src/assets/images/site/avatar.svg` with your own avatar. 4. Replace `src/assets/images/site/favicon.svg` with your own favicon. 5. Start writing posts in `src/content/posts/en/`. ## Writing Posts Create a new `.md` or `.mdx` file in `src/content/posts/en/`: ```markdown --- title: 'My First Post' description: 'A short summary of this post.' pubDate: 2026-01-01 tags: [hello, world] categories: [General] --- Your content here... ``` See the included sample post for all available frontmatter fields. ## Deploy to GitHub Pages The included `.github/workflows/deploy.yml` builds your site on every push to `main`. Deployment runs automatically once GitHub Pages is enabled for the repository. To set it up: ### 1. Enable GitHub Pages Go to your repo **Settings → Pages → Source** and select **GitHub Actions**. > If Pages is not enabled yet, the workflow still builds but skips the deploy step. ### 2. Set environment variables (optional) Go to **Settings → Environments → github-pages → Environment variables** and add any of: | Variable | Purpose | Default | | --------------------------- | ------------------------------------- | -------------------- | | `SITE_URL` | Your production URL | Auto-detected | | `BASE_PATH` | Sub-path for the site | Auto-detected | | `PUBLIC_GITHUB_HANDLE` | GitHub profile link in sidebar | Your GitHub username | | `PUBLIC_TWITTER_HANDLE` | Twitter/X link in sidebar | _(none)_ | | `PUBLIC_CONTACT_EMAIL` | Email link in sidebar | _(none)_ | | `PUBLIC_GISCUS_ENABLED` | Enable comments (`true`/`false`) | _(none)_ | | `PUBLIC_GISCUS_REPO` | `owner/repo` for Giscus | _(none)_ | | `PUBLIC_GISCUS_REPO_ID` | From [giscus.app](https://giscus.app) | _(none)_ | | `PUBLIC_GISCUS_CATEGORY` | Discussion category name | _(none)_ | | `PUBLIC_GISCUS_CATEGORY_ID` | From [giscus.app](https://giscus.app) | _(none)_ | > **Note:** All variables are optional. The site builds and deploys with zero configuration — variables just enable extra features. ### 3. Customize the Privacy Policy (optional) Edit the bilingual privacy policy templates: ```text src/content/pages/en/privacy.md src/content/pages/fr/privacy.md ``` Replace placeholder values in `[BRACKETS]` (site name, contact email, etc.). The privacy policy appears in the footer with a link — disable it by setting `showPrivacyPolicy: false` in `src/config.ts`. ### 4. Push to `main` That's it. The workflow will build and deploy your site. Your site will be available at `https://<username>.github.io/<repo-name>/`. ### 5. Run (or re-run) the deploy workflow after enabling Pages If your first workflow run happened before step 1, deploy was skipped by design. After enabling Pages, trigger deployment with either option: 1. Push any new commit to `main`. 2. Or go to **Actions → Deploy to GitHub Pages → Run workflow**. The next run will execute the deploy job and publish your site. ## Custom Domain ### Dedicated domain for this site To use your own domain (e.g., `https://blog.example.com`) exclusively for this site: 1. Configure your DNS and repository settings — see [GitHub's custom domain docs](https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site). 2. The workflow automatically detects custom domains and configures `SITE_URL` and `BASE_PATH` correctly. **No manual configuration is needed at all** — it works out of the box! ### Using a custom domain on your GitHub user site If your GitHub user site (`<username>.github.io`) already points to a custom domain (e.g., `example.com`), then **all project sites** under that account are automatically served under that domain: ```text username.github.io → example.com (user site) username.github.io/blog → example.com/blog (this repo) ``` In this case, you don't need any extra DNS setup. The workflow detects the origin (`example.com`) and path (`/blog`) and configures it automatically! ## Giscus Comments To enable GitHub Discussions-powered comments on posts: 1. Install the [Giscus app](https://github.com/apps/giscus) on your repo. 2. Go to [giscus.app](https://giscus.app), fill in your repo details, and copy the generated values. 3. Add these environment variables in **Settings → Environments → github-pages**: - `PUBLIC_GISCUS_ENABLED` = `true` - `PUBLIC_GISCUS_REPO` = `your-username/your-repo` - `PUBLIC_GISCUS_REPO_ID` = _(from giscus.app)_ - `PUBLIC_GISCUS_CATEGORY` = `Announcements` _(or your chosen category)_ - `PUBLIC_GISCUS_CATEGORY_ID` = _(from giscus.app)_ ## Single Language Mode This starter ships with English + French (i18n). To run a single-language site: 1. Open `src/config.ts` and set `multilingual: false`. 2. Delete the `src/content/posts/fr/` folder (and `src/content/pages/fr/` if present). 3. Remove the `src/pages/fr/` directory. The language switcher will disappear and all `hreflang` tags are omitted. ## Customization | What | Where | | ------------------------------- | --------------------------------------- | | Site title, description, author | `src/config.ts` → `SITE` | | Navigation links | `src/config.ts` → `NAV` | | Social links | `src/config.ts` → `SOCIAL` | | Avatar image | `src/assets/images/site/avatar.svg` | | Favicon | `src/assets/images/site/favicon.svg` | | Default OG image | `src/assets/images/site/og-default.svg` | | Global styles | `src/styles/global.css` | | Theme colors | daisyUI theme tokens in `global.css` | ## Commands | Command | Action | | ---------------- | ------------------------------------ | | `bun dev` | Start dev server at `localhost:4321` | | `bun run build` | Build production site to `./dist/` | | `bun preview` | Preview production build locally | | `bun run lint` | Run ESLint | | `bun run format` | Format with Prettier | ## Documentation For full documentation on all features (i18n, dark mode, math, comments, OG images, etc.), see the [main repository README](https://github.com/kannansuresh/chirping-astro#readme). ## Contributing & Issues > **This starter repository is automatically synced from the [main Chirping Astro repository](https://github.com/kannansuresh/chirping-astro).** Please do not open pull requests here — changes will be overwritten on the next sync. - **Found a bug?** [Open an issue](https://github.com/kannansuresh/chirping-astro/issues) on the main repository. - **Want to contribute?** See the [contributing guide](https://github.com/kannansuresh/chirping-astro/blob/main/CONTRIBUTING.md) on the main repository. - **Have a question?** Use [Discussions](https://github.com/kannansuresh/chirping-astro/discussions) on the main repository. ## License MIT — see [LICENSE](./LICENSE).
Explore similar templates
Compare previews and descriptions within the same stack and category.

astrowind
AstroWind is a free, open-source Astro starter theme using Astro and Tailwind CSS, released under the MIT license.
Astro · Blog
accessible-astro-starter
An accessibility-focused Astro 6 starter template with WCAG 2.2 AA practices, Tailwind CSS 4, TypeScript, Prettier, ESLint, form validation, blog and portfolio examples, and preference toggles for dark mode, high contrast, and reduced motion.
Astro · Blog

astro-erudite
astro-erudite is an opinionated, unstyled static blog template built with Astro and native CSS, with no UI or CSS framework and minimal dependencies.
Astro · Portfolio

astro-shopify
A lightweight Shopify headless ecommerce starter template built with Astro and Svelte, integrating the Shopify Storefront API for product and inventory data, with built-in cart state management and basic add-to-cart and checkout flow.
Astro · E-commerce

brutal
Brutal is a neobrutalism Astro starter theme from ElianCodes, derived from the author's personal site and generalized. It includes a Markdown blog collection, build-time RSS and sitemap, image optimization, Tailwind CSS styling, and Biome checks, with no JavaScript by default.
Astro · Starter

qwind
Qwind is a free and open-source website template built on Qwik and Tailwind CSS, featuring directory-based routing via QwikCity, a Markdown blog, dark mode, and static deployment configuration.
Astro · Tool Site
