Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/workflows/deploy-pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,9 @@ jobs:
- run: npm ci
- run: npm run build:css
- run: npm run build:site
env:
# PostHog project key (public by design). Unset = analytics stays off.
POSTHOG_KEY: ${{ secrets.POSTHOG_KEY }}

- uses: actions/upload-pages-artifact@v3
with:
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/verify-pages-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,5 +22,6 @@ jobs:
- run: npm run build:css
- run: npm run build:pages
- run: npm run build:site
- run: npm test
- run: npm run check:links -- --internal-only
- run: git diff --exit-code
1 change: 1 addition & 0 deletions 404.html
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
13 changes: 13 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,19 @@ node scripts/build-pages.js --force # build and overwrite all root files (los
If `--check` reports drift, port the root edits back into `src/pages/` before
running the build, so future builds stay idempotent.

## Analytics

`public/analytics.js` loads PostHog (US cloud) on every page through the shared head
block in `scripts/build-pages.js`, and tags visits referred by AI assistants (ChatGPT,
Perplexity, Claude, Gemini, Copilot, Meta AI, Grok, DeepSeek, Mistral, You.com, Phind)
with an `ai_referral_landing` event and an `ai_referrer` property. It is cookieless and
does not record sessions or capture form input.

The committed file keeps the placeholder `"__POSTHOG_KEY__"`, which leaves analytics off.
`npm run build:site` swaps in the `POSTHOG_KEY` environment variable when it is set; the
deploy workflow passes the `POSTHOG_KEY` repository secret. Run `npm test` to check the
classifier and the build injection.

## Deployment

This site is deployed using GitHub Pages:
Expand Down
1 change: 1 addition & 0 deletions compare-mockserver.html
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@

<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions comparisons.html
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
<link rel="stylesheet" href="/public/vendor/phosphor/phosphor.css" />
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions contact.html
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@

<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions engineering-notes.html
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
<link rel="stylesheet" href="/public/vendor/phosphor/phosphor.css" />
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions faq.html
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@

<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-announcing-v1.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-api-drift-detection-and-contract-alerting.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-client-generation-tradeoffs.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-cloud-launch.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-conformance-maturity.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-conformance-testing.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-cost-cap-design.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-fault-injection-patterns.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-grpc-dynamic-routing-release.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-grpc-mocking-in-ci.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-migration-from-static-fixtures.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-mocking-kafka-without-broker.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-multi-target-conformance-and-real-world-specs.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-our-saas-infrastructure.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-release-cadence-and-risk.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-reliability-update-march-2026.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-reliability-updates-conformance-and-admin.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-scenario-switching.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-security-guardrails-v0-2x.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-spec-driven-openapi-conformance.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-testing-failure-paths.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-v0-1-3-protocol-expansion.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-v0-2-0-client-generation.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-v0-2-3-bug-fixes.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-v0-2-4-client-fixes.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-v0-2-5-enterprise-security.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-v0-2-6-security-infrastructure.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-v0-2-7-api-sync-tcp.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-v0-3-227-release.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-v0-3-migration-playbook.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-vs-postman-mock.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-wafbench-security-hardening.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-wafbench-sqli-detection.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-wasm-plugins.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-when-wiremock-isnt-enough.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
1 change: 1 addition & 0 deletions note-why-multi-protocol.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/public/styles.css" />
<link rel="alternate" type="application/rss+xml" title="MockForge Engineering Notes" href="/rss.xml" />
<script src="/public/analytics.js" defer></script>
<script>
(function () {
try {
Expand Down
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@
"build:pages": "node ./scripts/build-pages.js",
"build:site": "node ./scripts/build-pages.js dist",
"sync:shells": "npm run build:pages",
"check:links": "node ./scripts/check-links.mjs"
"check:links": "node ./scripts/check-links.mjs",
"test": "node --test scripts/analytics.test.js"
},
"devDependencies": {
"tailwindcss": "3.4.17"
Expand Down
Loading
Loading