Source code for my personal website and its GitHub Pages publishing setup. The site is built with Astro, styled with Tailwind CSS, and uses a few React components. Content is primarily Markdown/MDX.
- Live site: https://flowerca77.github.io
- License: GPL-3.0-or-later (see
License.md
) - Language: English-first. Please use English in Issues/PRs when possible.
- Astro 5 (static site generation)
- Tailwind CSS 4 (styling)
- React (select interactive components)
- KaTeX for math, Shiki for code highlighting, remark/rehype pipeline
- PNPM for package management
.
├─ public/ # Static assets (copied as-is)
├─ src/
│ ├─ assets/ # Assets used by the site
│ ├─ components/ # Reusable components (Astro/TSX)
│ ├─ layouts/ # Page layouts
│ ├─ pages/ # Routes (Astro file-based routing)
│ ├─ styles/ # Global styles (Tailwind entry, etc.)
│ ├─ content/ # Site content (Markdown/MDX)
│ └─ content.config.ts # Astro Content Collections config
├─ astro.config.mjs # Astro config
├─ tailwind.config.js # Tailwind config
├─ package.json # Scripts & dependencies
└─ pnpm-lock.yaml # PNPM lockfile
Prerequisites:
- Node.js (LTS or newer recommended)
- PNPM (the repo pins a version via
packageManager
; use your local PNPM if different)
Common commands:
- Install deps
pnpm install
- Start dev server (defaults to port 4321)
pnpm dev
- Build & local preview
pnpm build
pnpm preview
- Content lives under
src/content/
as.md
/.mdx
. - Routes are defined by files in
src/pages/
including dynamic routes[param].astro
and[...param].astro
. - Reusable UI components are in
src/components/
; layouts insrc/layouts/
.
This repository builds and publishes to GitHub Pages. Typical options:
- CI builds (
pnpm install && pnpm build
) and publishes thedist/
output as the Pages artifact. - Or build locally and push static artifacts to the Pages branch (e.g.,
gh-pages
).
See your repository Settings → Pages for the active configuration.
- Issues are welcome for bugs and enhancements. Format is flexible, but please be clear and specific about the problem/need and how to reproduce it.
- PRs for code contributions are welcome (please read
Contributing.md
). - Content submissions (articles, long-form content) are currently accepted only via direct contact with me. Direct content drops to the repo are not accepted.
More:
- Contributing Guide:
Contributing.md
- Code of Conduct:
Code_Of_Conduct.md
- Security Policy:
Security.md
- Support:
Support.md
If you discover a security issue, please do not open a public Issue. Contact me privately (see the site/About page). See Security.md
for details.
GPL-3.0-or-later. See License.md
.
If you need to cite this site/repository, see Citation.cff
in the repository root.
Authored by FlowerCA77 with assistance from GitHub Copilot (AI-generated content).