OverviewFilesCommitsIssuesDocsReleasesPeers

p2pbuilders commits / 89cbadf

Make go-live tooling portable + add Pages deploy for the landing site
- web/publish.mjs and web/check-durable.mjs imported HiveRelayClient from an absolute path on the original author's machine — publishing the web build literally could not run anywhere else. Import the p2p-hiverelay package (already a dependency) instead. - Add .github/workflows/deploy-landing.yml: publishes landing/ to GitHub Pages on pushes to main (Settings -> Pages -> Source: GitHub Actions, then set the p2pbuilders.org custom domain). - .gitignore: cover .hiverelay-local/ (publish.mjs --local state). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QAqfE2dpo3vsVd9BorLY6w
89cbadf78cfb8aba95c8df14d19c3cea6ca6773f
by Claude <noreply@anthropic.com> · 2026-07-29T12:14:42.000Z

Changed files (4) +39 -2

.github/workflows/deploy-landing.yml +36 -0
……@@ -0,0 +1,36 @@
1name: Deploy landing site to GitHub Pages
2
3# Publishes landing/ (the static site for p2pbuilders.org) on every push to
4# main that touches it. One-time setup in the repo: Settings → Pages →
5# Source: "GitHub Actions", then set the custom domain to p2pbuilders.org
6# and point DNS at GitHub Pages.
7
8on:
9 push:
10 branches: [main]
11 paths: ['landing/**', '.github/workflows/deploy-landing.yml']
12 workflow_dispatch:
13
14permissions:
15 contents: read
16 pages: write
17 id-token: write
18
19concurrency:
20 group: pages
21 cancel-in-progress: true
22
23jobs:
24 deploy:
25 runs-on: ubuntu-latest
26 environment:
27 name: github-pages
28 url: ${{ steps.deployment.outputs.page_url }}
29 steps:
30 - uses: actions/checkout@v4
31 - uses: actions/configure-pages@v5
32 - uses: actions/upload-pages-artifact@v3
33 with:
34 path: landing
35 - id: deployment
36 uses: actions/deploy-pages@v4
.gitignore +1 -0
……@@ -6,6 +6,7 @@ node_modules/
66.hiverelay-publish/
77.hiverelay-seed/
88.hiverelay-probe/
9.hiverelay-local/
910.p2pbuilders.key
1011primary.key
1112
web/check-durable.mjs +1 -1
……@@ -3,7 +3,7 @@
33// the drive from a fresh store and actually READ a file — which forces fetching
44// the content/blobs core from whatever peer serves it. If a relay serves the
55// file with all my hosts down, the drive is genuinely durable. Exit 0 = durable.
6import { HiveRelayClient } from '/Users/localllm/Projects/pear-ecosystem/00-core/hiverelay/packages/client/index.js'
6import { HiveRelayClient } from 'p2p-hiverelay'
77import { fileURLToPath } from 'url'
88import { dirname, join } from 'path'
99
web/publish.mjs +1 -1
……@@ -10,7 +10,7 @@
1010 *
1111 * The non-local form is OUTWARD-FACING (public network). Run deliberately.
1212 */
13import { HiveRelayClient } from '/Users/localllm/Projects/pear-ecosystem/00-core/hiverelay/packages/client/index.js'
13import { HiveRelayClient } from 'p2p-hiverelay'
1414import { readFileSync, writeFileSync } from 'fs'
1515import { fileURLToPath } from 'url'
1616import { dirname, join } from 'path'