Initial commit: BlueCap Strategies Astro site

Static Astro 5 site for BlueCap Strategies with exact live-site content
parity, deployed to k3s via GitOps (ArgoCD).

- Page copy in Markdown content collections (services, focus-areas, pages,
  insights) with a Zod SEO schema enforced at build time
- Homepage + About restored to exact live copy; real live-site imagery
- Build-time SEO linter (scripts/seo-lint.mjs) and Playwright e2e suite
- Multi-stage Dockerfile (nginx serves dist/) and Kustomize manifests (k8s/)
- Per-agent robots.txt; config-driven PostHog + Umami analytics scaffold
- ADRs and engineering docs under docs/

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
gitea_adminandClaude Opus 4.8 committed 2026-07-15 17:40:46 -04:00
commit cd91c4b97c
92 files changed
+10246

No files matched your search

+78
View File
@@ -0,0 +1,78 @@
# Content Deviations
Intentional differences between the live WordPress site (`docs/live-site-content-inventory.md`)
and the Astro rebuild, logged per the parity plan. Updated **2026-07-15** after the copy
migration to Markdown collections (ADR-0002).
## Service & focus-area detail pages — exact copy restored
- The 8 service detail pages and 4 focus-area detail pages now carry **verbatim live-site copy** in
`src/content/services/*.md` and `src/content/focus-areas/*.md`. Each service page: H1 (service
name) → H2 (exact tagline) → the exact three body paragraphs, matching the live structure.
- **Removed invented content** from the earlier rebuild: the paraphrased `sections[]` sub-headings
and the "Typical outputs" / `outcomes[]` lists were **not present on the live site** and have been
dropped to honor the no-invention rule. They may return later as owner-approved "Typical outputs"
modules (parity plan Phase 5).
- **Focus-area detail pages** use the exact single paragraph from the homepage "Our Core Focus
Areas" section — the only live copy that exists for these (the live `/focus-areas/` page is empty).
No additional copy was invented.
## Metadata (not visible body copy)
- **SEO meta descriptions** (`description` frontmatter, 120–158 chars) are newly written marketing
metadata, not live body copy. Paraphrase is acceptable for meta descriptions; they are enforced
by the Zod schema (ADR-0003).
- `summary` frontmatter reuses the **exact** live `/services/` overview paragraph (services) and the
**exact** homepage focus paragraph (focus areas); it drives the overview and homepage cards.
## Typography
- Curly apostrophes/quotes from WordPress were normalized to **straight** apostrophes in the Markdown
bodies (e.g., "client's" not "client's"). Meaning and wording are unchanged.
## Homepage — exact copy restored (2026-07-15)
- `src/pages/index.astro` now carries **exact live copy**: hero paragraph, the full "How We Work"
section (intro + Increasing the Supply of Capital + Bridging Supply and Demand + Cultivating
Capital-Ready Initiatives incl. the "step in as sponsor" paragraph), the About teaser, the four
metrics (27 Years / $10+ billion / $3.5+ billion / 275+ Projects and Initiatives, with exact
supporting text), and the Core Focus Areas intro.
- **Additive (not live copy):** the "Our Services" section keeps a short connective subhead +
intro sentence (the live homepage lists only service titles). No fabricated claims.
- **Default OG / hero fallback images** repointed to real photos (`img_0067`); the contact hero uses
`img_0058`. The four generic placeholder images were **deleted** from `public/assets/`.
- **Omitted defect:** the live "Follow Our Quest" lorem-ipsum block remains removed.
- H1 wording is exact; live renders RESTORATION/PRESERVATION/RESPONSIBLE USE in all-caps, the
rebuild uses sentence case (typographic only).
## About Us — exact copy restored + migrated to Markdown (2026-07-15)
- Migrated to `src/content/pages/about.md` (ADR-0002) with **verbatim** copy for all ten sections
and every paragraph. The sticky in-page nav is derived from the h2 headings (restores the live
anchor nav). The live "andrestore" typo is corrected to "and restore".
- Added hero heading ("Finance, innovation, and stewardship…") — the live About page has no hero
heading; this is an additive structural heading, not body copy.
## Imagery — real live-site assets imported (2026-07-15)
- Real assets downloaded to `public/assets/live-site/` (+ `/icons`). The real logo replaced the
placeholder `public/assets/bluecap-logo.png`. Homepage hero (`img_0067`), homepage About band
(`img_0053`), About hero (`img_0062`), Services hero (`img_0075`), Focus/detail heroes
(`img_0070`) now use real photography. The 8 service cards render their real icons (decorative,
`aria-hidden`).
- `IMG_0075.webp` was JPEG-mislabeled on the live site; saved as `img_0075.jpg`.
## About Us imagery — interleaved (2026-07-15)
- Eight real live-site photos are now interleaved through the About sections (`img1`, `img_0055`,
`img_0054`, `img_0072`, `img_0053`, `img_0058`, `img_0075`, `img_0070`), plus `img_0062` as the
hero — matching the live page's ~9-photo visual rhythm. Alt text is descriptive (live alts were
empty). Order approximates the live placement; exact per-section pairing is best-effort.
## Known placeholders / not-yet-restored (tracked in parity-checklist.md)
- In-body About images are referenced by URL from Markdown, so they ship without intrinsic
width/height (minor CLS); revisit if a Lighthouse CLS budget requires it.
- Per-page **1200×630 OG images** (SEO plan §2) still to be generated; pages currently share the
`img_0067` default.
- Contact/defect items unchanged (see `bcs-website-owner-decisions`).