feat: add community Points of Interest showcase#156
Open
TheMeinerLP wants to merge 12 commits into
Open
Conversation
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
launchpad | 806d07f | Commit Preview URL Branch Preview URL |
May 21 2026, 12:39 PM |
Adds a localised /community-poi overview and detail route so the community can present in-game build projects with status, goal vs. current state, builders, image gallery and Litematica schematic downloads. Each POI is a markdown file under content/community-poi with a typed schema; pages, composables and section components follow the existing types/composables/sections house pattern. https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
…etup guide Builds on the community POI showcase with the cross-linking and authorship cues we were missing: - Carousel now picks up POIs flagged `featured: true` and renders them via a new `poi` slide type that deep-links to the detail page. - POIs gain a `category` (team / community / collab) with a coloured badge on card and detail, so visitors can tell at a glance who built what. - Optional `lore` frontmatter renders as a styled callout for POIs with a backstory; POIs without one simply skip the section. - Each schematic can carry an `origin`, `facing` and `setupNotes` so the placement guide shows up directly next to the download button, paired with a reusable Litematica install / usage FAQ accordion. https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
…eMap - Each schematic can now declare a Litematica mod version (`litematicaVersion`) alongside the existing Minecraft version, so builders pick the exact mod release the file was authored with. The version surfaces next to MC version and download, and a new FAQ entry explains why sticking to it matters. - New CommunityPoiBluemap section renders a coordinate-anchored "Open on BlueMap" button (built with `useBluemapDeepLink`, with dimension-aware map IDs that can be overridden via runtime config) and a togglable mini-preview that lazy-loads the BlueMap iframe at the POI's position — never auto-loaded so we don't ship a heavy third-party iframe by default. https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
…X, brand colors, B3nNy POIs Litematica & FAQ: - Prominent server-rule callout above the FAQ: Litematica is allowed as blueprint only; auto-place / easy-place leads to a permanent ban. - FAQ entries now support optional `links[]` and ship with Modrinth links for Litematica, MaLiLib, Fabric, and the Litematica version archive. Added a dedicated auto-place FAQ entry. Schematics: - Each schematic can carry `rotation` (NONE / CW_90 / CW_180 / CW_270 / CCW_90) on top of the existing facing, surfaced in the setup guide. Coordinates UX: - New CommunityPoiCoordsCopy mini-component renders two copy chips (raw "x y z" for mod fields, `/tp @s x y z` for chat) and lives in both the meta panel and the BlueMap section. Design: - POI components now use the project's brand tokens (--color-brand-primary/secondary/accent/purple/orange) via color-mix instead of generic Tailwind palettes or wrong indigo fallbacks. Cards/schematic cards/BlueMap section use the surface + border tokens so dark mode stays consistent with the rest of the site. Contributing: - New CommunityPoiContributeInfo block points contributors at Discord and the GitHub PR flow under content/community-poi/; shows on both the overview and detail pages. SEO: - Detail page now emits an additional `Place` JSON-LD node with the Minecraft coordinates as `additionalProperty` entries alongside the existing CreativeWork entity. New POIs from B3nNy: - Labyrinth / Maze (community, in-progress 40%) with Maze.schem at -1465 / 61 / 792, CW_180. - Hafengebäude / Harbour building (community, planning 0%) with DOCKHAFEN.litematic at -660 / 44 / -320, rotation NONE. - Uncensored Library rebuild (community, planning 0%, area prep ~45%) with NEUE MAGABASE.litematic, references the original Reporters Without Borders project. https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
…demo data - POIs can now opt out of community contributions by setting `acceptsContributions: false`. Showcase POIs get a "Showcase only" badge on the card and the detail page swaps the build-along block for a "please don't modify" notice — the forum link still shows so visitors have somewhere to give feedback. - Each POI can carry a `forumUrl` to its dedicated forum channel. Surfaces both in the meta panel (full row with link) and as a primary CTA in the collaboration block, ahead of the generic Discord/GitHub links. - The detail-page collaboration block replaces the generic contribute block, so the messaging matches per-POI policy. - Removed the three demo POIs (spawn lighthouse, Saqar desert city, End portal ruin); only the real B3nNy projects remain. https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
… icons - Hook B3nNy's three Discord forum channels into the POI frontmatter: Maze (1189280187876134932), Harbour (1192098359452909678), Uncensored Library (1409893917134028861). Surfaces in the meta panel and as the primary CTA in the collaboration block. - Fix the maze `updatedAt` to 2026-04-26 — the date of the last image drop in the forum channel. - Replace the emoji glyphs sprinkled across the POI UI with proper FontAwesome icons (image, lock, cube, comment, github, discord, triangle-exclamation, chevron-left/right/down, times, arrow-up-right-from-square, copy, terminal, check, plus/minus, handshake, book-open, map, download). Adds the missing icons to `plugins/fontawesome.js` so the `['fas'/'fab', name]` lookup resolves them globally. https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
…BlueMap
- Drop the BlueMap embed toggle so every POI now shows its in-world
position the moment you scroll the section into view (the iframe is
still `loading="lazy"`, so it doesn't ship on initial page load).
- Re-label the POI `coordinates` block as "BlueMap-Position" / "BlueMap
position" with a hint pointing at the per-schematic Litematica
origin, since the two answer different questions ("where to look"
vs "where to place the schematic").
- Add `farm` to `COMMUNITY_POI_CATEGORIES` (using the brand-primary
green tone) so upcoming farm-showcase POIs share the same plumbing
as the build projects.
- Wire B3nNy's maze gallery from the 7z drop: nine curated WebPs
under public/community-poi/labyrinth/ (start → result), with
matching DE/EN frontmatter and alt text on every image.
https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
The harbour and Uncensored Library POIs pointed `thumbnail` at a `cover.webp` that was never created, so the deployed pages 404'd on every thumbnail request (card + detail hero). No images exist for these two projects yet — remove the `thumbnail`/`thumbnailAlt` fields so the card and detail page fall back to the placeholder icon, which they already handle gracefully. The maze keeps its real gallery. https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
Preview deploys (every branch except `release` in Cloudflare Workers Builds) were routing images through img.onelitefeather.net, which only serves the live site. Any asset added on a branch — like the new maze gallery — 404'd on the preview because the proxy fetches it from production, where it doesn't exist yet. Pick the image provider from `WORKERS_CI_BRANCH`: the `release` branch keeps the `cloudflare` provider, every other build (preview branches, local `dev`/`build`) uses the `none` provider so `<NuxtPicture>` serves the original WebP straight from the deploy's own /public. Production behaviour is unchanged. https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
Replace the implicit `WORKERS_CI_BRANCH === 'release'` branch-name check with an explicit `NUXT_IMAGE_PROVIDER` build variable, set per Wrangler environment in Cloudflare Workers Builds. The `production` environment sets it to `cloudflare`; preview and local builds leave it unset and fall back to `none`. Also drop the stale `NUXT_IMAGE_PROVIDER` entry from the Worker `vars` — it was a runtime var that nothing read, and keeping it next to the new build variable of the same name was just confusing. https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
`acceptsContributions: z.boolean().optional()` was stored as `false` when the field was absent from frontmatter, so @nuxt/content's generated column made every POI evaluate `acceptsContributions === false` — flagging all three real community projects as "showcase only" with the lock badge on the overview. Switch to `z.boolean().default(true)`: the SQL column is now `BOOLEAN DEFAULT true`, so a POI is community-contributable unless it explicitly opts out with `acceptsContributions: false`. Verified the rebuilt content DB stores `true` for all three POIs (de + en). https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
Conflict resolution kept main's expanded `rank` enum; reformat it multi-line to match the rest of content.config.ts and satisfy the array-element-newline lint rule. https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
4275004 to
806d07f
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a localised /community-poi overview and detail route so the community can present in-game build projects with status, goal vs. current state, builders, image gallery and Litematica schematic downloads. Each POI is a markdown file under content/community-poi with a typed schema; pages, composables and section components follow the existing types/composables/sections house pattern.
https://claude.ai/code/session_01TWED5ZjQD6uv434RqTBaY2
Overview
Fixes #{issue number}
Description
Submitter Checklist
@since TODO.