Static product-review site, built with Astro, deployed to GitHub Pages.
Deployed at: https://getproductreview.com (custom apex domain on GoDaddy,
served by GitHub Pages). The greydgl.github.io/GetProductReview/ project URL
redirects here once DNS resolves.
npm install
npm run dev # http://localhost:4321/GetProductReview/
npm run build # outputs ./dist
npm run preview # serves ./dist locallyCreate a new Markdown file under src/content/reviews/. Use one of the existing
files as a template. The filename (without .md) becomes the URL slug, e.g.
my-new-review.md → /reviews/my-new-review.
Required and optional frontmatter fields are defined in src/content.config.ts.
Push to main. The GitHub Actions workflow at .github/workflows/deploy.yml
builds and publishes to GitHub Pages automatically.
The site supports two deploy targets, controlled by SITE_URL and BASE_PATH
in astro.config.mjs.
const SITE_URL = 'https://getproductreview.com';
const BASE_PATH = '/';Served at https://getproductreview.com. Requires public/CNAME (present) +
GoDaddy DNS + the custom domain set in repo Settings → Pages.
GoDaddy DNS records for getproductreview.com:
| Type | Host | Value | TTL |
|---|---|---|---|
| A | @ | 185.199.108.153 | 600 |
| A | @ | 185.199.109.153 | 600 |
| A | @ | 185.199.110.153 | 600 |
| A | @ | 185.199.111.153 | 600 |
| CNAME | www | greydgl.github.io | 600 |
const SITE_URL = 'https://greydgl.github.io';
const BASE_PATH = '/GetProductReview';Served at https://greydgl.github.io/GetProductReview/. Delete public/CNAME
and clear the custom domain in repo Settings → Pages when using this target.
Add the site at dash.cloudflare.com → Analytics & Logs → Web Analytics → Add a
site (manual setup), copy the beacon token, and paste it into
cloudflareAnalyticsToken in src/lib/site.ts.
- Astro 5 — static-site generator
- Self-hosted Fraunces + Inter via
@fontsource-variable @astrojs/sitemap,@astrojs/rss,@astrojs/mdx- Cloudflare Web Analytics (manual beacon, no proxy required)