feat(site): add Longshot button and website build integration #1

Open
bibiburl wants to merge 5 commits from bibiburl/Site:feat/longshot-link into main
Member

Why

The MagicBean homepage has no direct route into Longshot's player website. Add a Longshot button alongside Git and Discord, using the supplied hook icon, and package the built Longshot website at /Longshot/ so that button has a destination.

Changes

  • public/index.html: Longshot button and matching icon styling; public/longshot.png copies the existing supplied artwork unchanged.
  • scripts/prepare-longshot.mjs: copy a supplied Longshot build into generated, ignored public/Longshot/. Validate required pages, base path and search output; reject symlinks and overlapping source/target paths before replacing output.
  • Dev and deploy scripts require LONGSHOT_DIST. README documents building the separate Longshot repository and preparing the combined site. Maintained documentation is not duplicated in this repository.

Local preview

First build bibiburl/Longshot, branch docs/longshot-website (companion PR targeting MagicBeanDev/Longshot):

# From Longshot/website with Node 22.23.4 or newer:
npm ci
npm run build:preview

Then from this repository:

npm ci
LONGSHOT_DIST=/absolute/path/to/Longshot/website/dist npm run dev

Open the local URL Wrangler prints, inspect the Longshot button, and follow it through to the site, manual, team and About pages. There is no hosted PR preview.

Validation

  • Preparation succeeded against the companion Longshot build: 15 generated pages, 803 local links/assets checked and all seven website test files passing.
  • Local combined homepage and Longshot routes returned HTTP 200; HTML checks confirmed the button targets /Longshot/ and its destination exists.
  • Missing LONGSHOT_DIST fails without deleting previously prepared output.
  • No Cloudflare deployment was performed. Browser visual/keyboard/mobile checks are pending; no screenshots are claimed.

Review and deployment notes

Ready for review at the author's request. Review the homepage button's placement, icon and spacing, then test navigation on desktop and phone before approval. The validation limitations above remain outstanding.

The companion Longshot website source must be available and built before deploying this PR. npm run deploy now intentionally requires that build. For production, set Longshot's source edit-link variables to the intended repository/branch. Review the new build dependency before merging; reverting this commit restores the previous homepage/deployment behavior.

Base: MagicBeanDev/Site main @ fd63cdd. Head: bibiburl/Site feat/longshot-link @ dd4d257. The validation above records the earlier tested implementation; newer commits have not been revalidated in this status-only update. Changes were prepared with OpenAI Codex assistance. No pushes target Hookshot.

## Why The MagicBean homepage has no direct route into Longshot's player website. Add a Longshot button alongside Git and Discord, using the supplied hook icon, and package the built Longshot website at `/Longshot/` so that button has a destination. ## Changes - `public/index.html`: Longshot button and matching icon styling; `public/longshot.png` copies the existing supplied artwork unchanged. - `scripts/prepare-longshot.mjs`: copy a supplied Longshot build into generated, ignored `public/Longshot/`. Validate required pages, base path and search output; reject symlinks and overlapping source/target paths before replacing output. - Dev and deploy scripts require `LONGSHOT_DIST`. README documents building the separate Longshot repository and preparing the combined site. Maintained documentation is not duplicated in this repository. ## Local preview First build `bibiburl/Longshot`, branch `docs/longshot-website` (companion PR targeting `MagicBeanDev/Longshot`): ```sh # From Longshot/website with Node 22.23.4 or newer: npm ci npm run build:preview ``` Then from this repository: ```sh npm ci LONGSHOT_DIST=/absolute/path/to/Longshot/website/dist npm run dev ``` Open the local URL Wrangler prints, inspect the Longshot button, and follow it through to the site, manual, team and About pages. There is no hosted PR preview. ## Validation - Preparation succeeded against the companion Longshot build: 15 generated pages, 803 local links/assets checked and all seven website test files passing. - Local combined homepage and Longshot routes returned HTTP 200; HTML checks confirmed the button targets `/Longshot/` and its destination exists. - Missing `LONGSHOT_DIST` fails without deleting previously prepared output. - No Cloudflare deployment was performed. Browser visual/keyboard/mobile checks are pending; no screenshots are claimed. ## Review and deployment notes Ready for review at the author's request. Review the homepage button's placement, icon and spacing, then test navigation on desktop and phone before approval. The validation limitations above remain outstanding. The companion Longshot website source must be available and built before deploying this PR. `npm run deploy` now intentionally requires that build. For production, set Longshot's source edit-link variables to the intended repository/branch. Review the new build dependency before merging; reverting this commit restores the previous homepage/deployment behavior. Base: `MagicBeanDev/Site` main @ fd63cdd. Head: `bibiburl/Site` feat/longshot-link @ dd4d257. The validation above records the earlier tested implementation; newer commits have not been revalidated in this status-only update. Changes were prepared with OpenAI Codex assistance. No pushes target Hookshot.
Merge branch 'main' into feat/longshot-link
Some checks were skipped
Preview / Preview on Cloudflare (pull_request) Has been skipped
5026223288
Merge branch 'main' into feat/longshot-link
Some checks were skipped
Preview / Preview on Cloudflare (pull_request) Has been skipped
f85b05f9d5
Merge branch 'main' into feat/longshot-link
Some checks failed
Preview / Preview on Cloudflare (pull_request) Has been skipped
Preview / Preview on Cloudflare (pull_request_target) Failing after 3s
dd4d257785
bibiburl changed title from WIP: feat(site): add Longshot button and website build integration to feat(site): add Longshot button and website build integration 2026-11-13 05:43:45 +00:00
Merge branch 'main' into feat/longshot-link
All checks were successful
Preview / Preview on Cloudflare (pull_request) Has been skipped
Preview / Preview on Cloudflare (pull_request_target) Successful in 12s
eed2f54552
<!-- preview-deploy --> **Preview:** https://pr-1-magicbean-site.hckr-5e0.workers.dev This commit (eed2f545525c) on its own: https://01954fd2-magicbean-site.hckr-5e0.workers.dev
Owner

We will put this directly in Longshot repo at longshot.magicbean.dev, so feel free to change this PR into just a link to that

We will put this directly in Longshot repo at longshot.magicbean.dev, so feel free to change this PR into just a link to that
All checks were successful
Preview / Preview on Cloudflare (pull_request) Has been skipped
Preview / Preview on Cloudflare (pull_request_target) Successful in 12s
This pull request has changes conflicting with the target branch.
  • README.md
View command line instructions

Manual merge helper

Use this merge commit message when completing the merge manually.

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u 'feat/longshot-link:bibiburl-feat/longshot-link'
git switch 'bibiburl-feat/longshot-link'

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch 'main'
git merge --no-ff 'bibiburl-feat/longshot-link'
git switch 'bibiburl-feat/longshot-link'
git rebase 'main'
git switch 'main'
git merge --ff-only 'bibiburl-feat/longshot-link'
git switch 'bibiburl-feat/longshot-link'
git rebase 'main'
git switch 'main'
git merge --no-ff 'bibiburl-feat/longshot-link'
git switch 'main'
git merge --squash 'bibiburl-feat/longshot-link'
git switch 'main'
git merge --ff-only 'bibiburl-feat/longshot-link'
git switch 'main'
git merge 'bibiburl-feat/longshot-link'
git push origin 'main'
Sign in to join this conversation.
No reviewers
No labels
preview
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
MagicBeanDev/Site!1
No description provided.