feat(design): design bible skill, style guide page, responsive preview#1135
Merged
timothyfroehlich merged 10 commits intomainfrom Mar 29, 2026
Merged
feat(design): design bible skill, style guide page, responsive preview#1135timothyfroehlich merged 10 commits intomainfrom
timothyfroehlich merged 10 commits intomainfrom
Conversation
…e preview Design Bible skill doc (.agent/skills/pinpoint-design-bible/SKILL.md): - 12-section decision guide covering visual identity, surface hierarchy, mobile shell contract, responsive strategy, page archetypes, spacing rhythm, card patterns, navigation, typography, borders, transitions, and component inventory Style guide page (/dev/design-system): - Living reference rendering actual components with real theme tokens - Color palette, surfaces, typography, spacing, glows, buttons, cards, badges, badge grids, mobile shell diagram, page archetypes - Dev-only (redirects in production) Responsive preview (/dev/preview): - Side-by-side desktop + mobile iframe comparison for any route - Device presets, Desktop/Both/Mobile toggle, Hide Chrome mode - State persisted to localStorage across HMR reloads - Presets for Design System, Dashboard, Issues, Machines, Machine Detail, Issue Detail, Settings, Help, Report Also: - Relax X-Frame-Options from DENY to SAMEORIGIN (enables same-origin iframes) - Add dev-only Design System and Preview links to sidebar Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Updates to Preview Branch (worktree/design-bible) ↗︎
Tasks are run on every commit but only new migration files are pushed.
View logs for this Workflow Run ↗︎. |
Add .beads/, .dolt/, .beads-credential-key, and .superpowers/ to gitignore. Remove stale !.beads/*.jsonl negation rule that conflicted. Addresses bd doctor warnings about missing exclusion patterns. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Adds dev-only design tooling and guidance to support consistent UI changes across PinPoint, including a living style guide, a responsive preview utility, and an agent “design bible” skill doc.
Changes:
- Add
/dev/design-systemstyle guide page rendering real components and documenting tokens/patterns. - Add
/dev/previewresponsive iframe preview page with presets and localStorage persistence. - Add dev-only sidebar links and relax
X-Frame-Optionsto allow same-origin iframes.
Reviewed changes
Copilot reviewed 5 out of 6 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
src/components/layout/Sidebar.tsx |
Adds dev-only navigation entries for Design System + Preview. |
src/app/(app)/dev/preview/page.tsx |
Implements client-side responsive iframe preview tool with state persistence and chrome-hiding CSS injection. |
src/app/(app)/dev/design-system/page.tsx |
Adds dev-only design system/style guide page showcasing tokens and components. |
next.config.ts |
Changes X-Frame-Options to SAMEORIGIN for all routes. |
.agent/skills/pinpoint-design-bible/SKILL.md |
Adds a design bible skill doc for agents covering UI consistency rules. |
Comments suppressed due to low confidence (1)
next.config.ts:67
X-Frame-Optionsis being relaxed toSAMEORIGINfor all routes (source: "/:path*"). That’s broader than needed for the dev-only iframe preview tool and weakens clickjacking protection in production compared to the previousDENY. Consider keepingDENYin production and only usingSAMEORIGINin development (or scoping the header to/dev/preview//dev/:path*only).
async headers() {
return [
{
source: "/:path*",
headers: [
{
key: "Strict-Transport-Security",
value: "max-age=63072000; includeSubDomains; preload",
},
{
key: "X-Frame-Options",
value: "SAMEORIGIN",
},
{
key: "X-Content-Type-Options",
value: "nosniff",
},
{
key: "Referrer-Policy",
value: "strict-origin-when-cross-origin",
},
{
key: "Permissions-Policy",
value: "camera=(), microphone=(), geolocation=()",
},
],
},
Beads gitignore entries (.beads/, .dolt/, .beads-credential-key) will be handled on the main worktree. Keep .superpowers/ ignore only. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add server wrapper for /dev/preview with production redirect - Sanitize iframe src paths to same-origin relative paths only - Fix color palette description to clarify hex values are mirrored Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Sanitize path from localStorage restore (not just URL param/form input) - Use CSS variables for color swatch backgrounds instead of hardcoded hex - Add pinpoint-design-bible skill to AGENTS.md skill table Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2 tasks
# Conflicts: # .gitignore
Keep both beads gitignore entries (from main) and .superpowers/ entry (from this branch). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Replace blanket colon ban in sanitizePath with protocol-scheme regex so query strings containing colons (e.g. ?since=12:00) work - Fix broken #typography anchor href in design system page Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Remove hideChrome from iframe keys to prevent full reload on toggle; inject/remove CSS in-place via useEffect instead - Switch dev page gating from NODE_ENV to VERCEL_ENV so preview deployments can access design system and preview pages Co-Authored-By: Claude Opus 4.6 (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
/dev/design-system) — living reference rendering actual components with real theme tokens (dev-only)/dev/preview) — side-by-side desktop + mobile iframe comparison with device presets, view mode toggle, hide chrome, and localStorage persistenceX-Frame-Optionsrelaxed fromDENYtoSAMEORIGINto enable same-origin iframesContext
This is Phase 1 of the Design Bible & Consistency epic (PP-yxw). The skill doc and preview tool are prerequisites for the consistency fixes that follow — agents need the rules before applying them, and the preview page lets Tim monitor changes visually as they land.
Test plan
/dev/design-system— all sections render with correct tokens and components/dev/preview?path=/dashboard— both viewports load, Hide Chrome strips navigation🤖 Generated with Claude Code