Add Harsh.Town design preview at /town/#4
Draft
97harsh wants to merge 3 commits into
Draft
Conversation
Self-contained pixel top-down portfolio prototype. A tiny self-attention
layer running in-browser via TensorFlow.js drives autonomous NPC chatter;
project NPCs are clickable and reveal modals with trait embeddings.
Lives at /town/ as a draft preview; the existing Jekyll site is untouched.
JSX is inlined and wrapped in {% raw %} so Liquid leaves it alone.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
…xtjs-site/ now exists)
Port the design from the standalone /town/index.html prototype into a real Next.js page on the migration branch: - nextjs-site/components/NpcTown.tsx — TS port of the React component (TFJS still lazy-loaded from CDN to keep it out of the main bundle). - nextjs-site/pages/town.tsx — dynamic-imports NpcTown with ssr:false, since the component touches window/requestAnimationFrame on mount. - nextjs-site/pages/_app.tsx — adds the standard NextPageWithLayout pattern so town can opt out of the global Layout (sidebar / container) and render full-viewport. Existing pages keep the default Layout via the fallback. Removes the now-redundant Jekyll-side town/index.html — single source of truth lives in the Next.js project. next build emits out/town.html (2.7 kB, SSG static export), Vercel serves it at /town/. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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.
Summary
town/index.htmlrendering the Harsh.Town design from the Claude Design handoff bundle — a soft pixel top-down portfolio prototype./town/— the existing Jekyll site is untouched. Once we're happy we can promote it to/in a follow-up.Implementation notes
layout: null, permalink: /town/, sitemap: falseso Jekyll skips the default layout/sidebar and the page is excluded from the sitemap during preview.<script type="text/babel">block is wrapped in{% raw %}…{% endraw %}because the JSX uses{{ }}for inline style objects, which Liquid would otherwise eat.liquidgem). Couldn't run a fulljekyll buildlocally — Gemfile.lock points at gems not installed in this env — but GitHub Pages will build it server-side once this PR lands.Test plan
https://97harsh.github.io/town/after merge (or via a PR preview if configured) and confirm the page renders the pixel town with a tan background and HUD bar at the top.loading…→READYand "ATTN" goes toACTIVEwithin ~2s.PRESS [E]prompt appears, then E opens the modal with title/body/tags/trait bars.◉ ATTNoff and confirm the SVG attention lines + heatmap panel disappear./,/blogs/,/projects/, etc.) is unaffected.🤖 Generated with Claude Code