[codex] Add Shakapacker brand assets - #1135
Conversation
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (16)
📒 Files selected for processing (2)
WalkthroughThis PR adds branding and documentation to the Shakapacker repository. The root README now displays a centered logo header linking to shakapacker.com. A new README in the ChangesDocumentation and Branding Assets
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Poem
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Code ReviewOverview: Adds the Shakapacker folded-S brand asset set — PNG icons at multiple sizes, SVG mark/tile/lockup variants, and root-level favicon/icon files for Conductor and other dev-tool discovery. Overall this is a clean, low-risk PR. The gem and npm packaging are both safe: the gemspec explicitly lists paths that exclude IssuesMissing trailing newlines (critical — project linting rule) All five SVG files end without a trailing newline, which is explicitly forbidden by the project's linting rules (
Each file ends with Trailing whitespace in lockup SVGs Both Minor observations
|
| <path d="M300 276 H704 L604 394 H452 Z" fill="#FF5A4C" opacity="0.32"/> | ||
| <path d="M354 626 H506 L594 752 H224 Z" fill="#E05D00" opacity="0.20"/> | ||
| </g> | ||
| </svg> No newline at end of file |
There was a problem hiding this comment.
Missing trailing newline — the project requires all files to end with a newline character.
| </svg> | |
| </svg> |
| <path d="M300 276 H704 L604 394 H452 Z" fill="#FF5A4C" opacity="0.32"/> | ||
| <path d="M354 626 H506 L594 752 H224 Z" fill="#E05D00" opacity="0.20"/> | ||
| </g> | ||
| </svg> No newline at end of file |
There was a problem hiding this comment.
Missing trailing newline — the project requires all files to end with a newline character.
| </svg> | |
| </svg> |
| <path d="M300 276 H704 L604 394 H452 Z" fill="#FF5A4C" opacity="0.32"/> | ||
| <path d="M354 626 H506 L594 752 H224 Z" fill="#E05D00" opacity="0.20"/> | ||
| </g> | ||
| </svg> No newline at end of file |
There was a problem hiding this comment.
Missing trailing newline — the project requires all files to end with a newline character.
| </svg> | |
| </svg> |
| </g> | ||
| <text x="410" y="180" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="800" font-size="92" fill="#E6EDF3">Shakapacker</text> | ||
| <text x="414" y="252" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="500" font-size="40" fill="#8B949E">Rails asset bundling with modern build systems</text> | ||
| </svg> No newline at end of file |
There was a problem hiding this comment.
Missing trailing newline — the project requires all files to end with a newline character.
| </svg> | |
| </svg> |
| <rect x="66" y="66" width="892" height="892" rx="176" fill="none" stroke="#293544" stroke-width="20"/> | ||
|
|
||
| <g stroke-linejoin="round"> | ||
| <path d="M300 276 H704 L604 394 H452 L564 492 H408 L276 394 Z" fill="#E43D39"/> |
There was a problem hiding this comment.
This line contains trailing whitespace (two spaces). Should be an empty line.
| <path d="M300 276 H704 L604 394 H452 L564 492 H408 L276 394 Z" fill="#E43D39"/> |
There was a problem hiding this comment.
Fixed in b9fb4cc — trailing whitespace removed.
| </g> | ||
| <text x="410" y="180" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="800" font-size="92" fill="#24292F">Shakapacker</text> | ||
| <text x="414" y="252" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="500" font-size="40" fill="#8B949E">Rails asset bundling with modern build systems</text> | ||
| </svg> No newline at end of file |
There was a problem hiding this comment.
Missing trailing newline — the project requires all files to end with a newline character.
| </svg> | |
| </svg> |
| <rect x="66" y="66" width="892" height="892" rx="176" fill="none" stroke="#293544" stroke-width="20"/> | ||
|
|
||
| <g stroke-linejoin="round"> | ||
| <path d="M300 276 H704 L604 394 H452 L564 492 H408 L276 394 Z" fill="#E43D39"/> |
There was a problem hiding this comment.
This line contains trailing whitespace (two spaces). Should be an empty line.
| <path d="M300 276 H704 L604 394 H452 L564 492 H408 L276 394 Z" fill="#E43D39"/> |
There was a problem hiding this comment.
Fixed in b9fb4cc — trailing whitespace removed.
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Autofix Details
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: Registry README breaks lockup images
- Replaced the registry README lockup image paths with absolute raw GitHub URLs that resolve outside the repository checkout.
Or push these changes by commenting:
@cursor push b59ccfa947
Preview (b59ccfa947)
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -3,9 +3,9 @@
<p align="center">
<a href="https://shakapacker.com">
<picture>
- <source media="(prefers-color-scheme: dark)" srcset="./assets/brand/lockup-dark.svg">
- <source media="(prefers-color-scheme: light)" srcset="./assets/brand/lockup-light.svg">
- <img src="./assets/brand/lockup-light.svg" alt="Shakapacker: Rails asset bundling with modern build systems" width="760">
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/shakacode/shakapacker/7290273b23a1351912b47fb4e1303cec2fa8de8f/assets/brand/lockup-dark.svg">
+ <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/shakacode/shakapacker/7290273b23a1351912b47fb4e1303cec2fa8de8f/assets/brand/lockup-light.svg">
+ <img src="https://raw.githubusercontent.com/shakacode/shakapacker/7290273b23a1351912b47fb4e1303cec2fa8de8f/assets/brand/lockup-light.svg" alt="Shakapacker: Rails asset bundling with modern build systems" width="760">
</picture>
</a>
</p>You can send follow-ups to the cloud agent here.
…ge URLs - Add trailing newline to favicon.svg, icon-tile.svg, mark-transparent.svg, lockup-dark.svg, lockup-light.svg per project linting rule - Remove trailing whitespace on the blank line in lockup-dark.svg and lockup-light.svg - Switch README brand lockup <picture> sources from relative ./assets/brand/ paths to absolute raw.githubusercontent.com URLs so the hero images resolve on the npm and RubyGems registry README pages (the gemspec and package.json do not ship the assets/ directory) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Review feedback addressed in b9fb4cc
Informational observations from @claude's review (no action taken):
|
Code Review: Add Shakapacker brand assetsOverviewThis PR adds the Shakapacker folded-S brand asset set (SVGs, PNGs in various sizes, root favicons) and updates the README to show the light/dark lockup image. The intent is clear and the asset set is well-organized. IssuesCritical: Missing trailing newlines in all SVG files All five SVG files end without a trailing newline, violating the project's critical linting requirement (CLAUDE.md and
README relative paths will break on RubyGems The Minor
Positives
|
| <path d="M300 276 H704 L604 394 H452 Z" fill="#FF5A4C" opacity="0.32"/> | ||
| <path d="M354 626 H506 L594 752 H224 Z" fill="#E05D00" opacity="0.20"/> | ||
| </g> | ||
| </svg> |
There was a problem hiding this comment.
Missing trailing newline — the project requires all files to end with a newline character (enforced by linting rules). Please add a newline after </svg>.
| </g> | ||
| <text x="410" y="180" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="800" font-size="92" fill="#E6EDF3">Shakapacker</text> | ||
| <text x="414" y="252" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="500" font-size="40" fill="#8B949E">Rails asset bundling with modern build systems</text> | ||
| </svg> |
There was a problem hiding this comment.
Missing trailing newline — same issue as the other SVG files. Please append a newline after </svg>.
| @@ -0,0 +1,17 @@ | |||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1600 420" role="img" aria-label="Shakapacker logo lockup"> | |||
| <title>Shakapacker lockup</title> | |||
| <rect width="1600" height="420" rx="0" fill="#0D1117"/> | |||
There was a problem hiding this comment.
rx="0" is the SVG default and can be removed — it adds visual noise without effect. Same applies to the equivalent line in lockup-light.svg.
| <rect width="1600" height="420" rx="0" fill="#0D1117"/> | |
| <rect width="1600" height="420" fill="#0D1117"/> |
| </g> | ||
| <text x="410" y="180" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="800" font-size="92" fill="#24292F">Shakapacker</text> | ||
| <text x="414" y="252" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="500" font-size="40" fill="#8B949E">Rails asset bundling with modern build systems</text> | ||
| </svg> |
There was a problem hiding this comment.
Missing trailing newline — please append a newline after </svg>.
| <path d="M300 276 H704 L604 394 H452 Z" fill="#FF5A4C" opacity="0.32"/> | ||
| <path d="M354 626 H506 L594 752 H224 Z" fill="#E05D00" opacity="0.20"/> | ||
| </g> | ||
| </svg> |
There was a problem hiding this comment.
Missing trailing newline — please append a newline after </svg>.
| <path d="M300 276 H704 L604 394 H452 Z" fill="#FF5A4C" opacity="0.32"/> | ||
| <path d="M354 626 H506 L594 752 H224 Z" fill="#E05D00" opacity="0.20"/> | ||
| </g> | ||
| </svg> |
There was a problem hiding this comment.
Missing trailing newline — please append a newline after </svg>.
Review of PR 1135: Add Shakapacker Brand AssetsOverall: Low-risk, asset-only change that correctly avoids gem bloat. A few items worth addressing. Gemspec / PackagingThe gemspec uses an explicit file list ( Duplicate / Copied FilesThe brand README correctly documents these as intentional copies for tool discovery, but the repo now carries byte-for-byte duplicates:
Git deduplicates objects internally so the storage cost is negligible, but future manual updates risk the copies drifting out of sync with their canonicals. Consider a note in SVG Indentation InconsistencyAll SVG files mix zero-indent root elements with 8-space-indented path elements inside Dark Lockup: Icon Background Blends Into Lockup BackgroundIn Minor: Redundant
|
| @@ -0,0 +1,17 @@ | |||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1600 420" role="img" aria-label="Shakapacker logo lockup"> | |||
| <title>Shakapacker lockup</title> | |||
| <rect width="1600" height="420" rx="0" fill="#0D1117"/> | |||
There was a problem hiding this comment.
The rx="0" attribute is the SVG default and has no effect — it can be dropped.
| <rect width="1600" height="420" rx="0" fill="#0D1117"/> | |
| <rect width="1600" height="420" fill="#0D1117"/> |
| <title>Shakapacker lockup</title> | ||
| <rect width="1600" height="420" rx="0" fill="#0D1117"/> | ||
| <g transform="translate(70,66) scale(0.28)"> | ||
| <rect x="56" y="56" width="912" height="912" rx="186" fill="#0D1117"/> |
There was a problem hiding this comment.
The icon rounded-rect fill (#0D1117) matches the outer lockup background (#0D1117 on line 3). This makes the rounded-square silhouette of the icon invisible — only the faint stroke="#293544" border on the next line provides any separation. The red/orange paths still appear, but the icon reads as floating rather than inside a tile.
If the floating-mark effect is intentional, it might be worth a quick note in assets/brand/README.md. If not, consider using a slightly lighter fill (e.g. #161B22) to give the icon tile a visible background against the dark lockup.
| @@ -0,0 +1,17 @@ | |||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1600 420" role="img" aria-label="Shakapacker logo lockup"> | |||
| <title>Shakapacker lockup</title> | |||
| <rect width="1600" height="420" rx="0" fill="#FFFFFF"/> | |||
There was a problem hiding this comment.
Same as the dark lockup — rx="0" is the default and can be removed.
| <rect width="1600" height="420" rx="0" fill="#FFFFFF"/> | |
| <rect width="1600" height="420" fill="#FFFFFF"/> |
| <rect x="56" y="56" width="912" height="912" rx="186" fill="#0D1117"/> | ||
| <rect x="66" y="66" width="892" height="892" rx="176" fill="none" stroke="#293544" stroke-width="20"/> | ||
|
|
||
| <g stroke-linejoin="round"> |
There was a problem hiding this comment.
The <g> block has 8-space indentation while the surrounding root elements (<rect>, <title>) have no indentation at all. Looks like a copy-paste artifact. Consider normalising to 2-space indent throughout the file (and favicon.svg, which is identical).
| <path d="M354 626 H506 L594 752 H224 Z" fill="#E05D00" opacity="0.20"/> | ||
| </g> | ||
| </g> | ||
| <text x="410" y="180" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="800" font-size="92" fill="#E6EDF3">Shakapacker</text> |
There was a problem hiding this comment.
Minor inconsistency: the title text starts at x="410" but the subtitle uses x="414" — a 4px horizontal offset. Same pattern exists in lockup-light.svg. If this is intentional for optical alignment, a comment in assets/brand/README.md would clarify intent; if accidental, the subtitle should also use x="410".
| <text x="410" y="180" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="800" font-size="92" fill="#E6EDF3">Shakapacker</text> | |
| <text x="410" y="252" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="500" font-size="40" fill="#8B949E">Rails asset bundling with modern build systems</text> |
| </g> | ||
| </g> | ||
| <text x="410" y="180" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="800" font-size="92" fill="#24292F">Shakapacker</text> | ||
| <text x="414" y="252" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="500" font-size="40" fill="#8B949E">Rails asset bundling with modern build systems</text> |
There was a problem hiding this comment.
Same 4px x-offset as lockup-dark.svg — title at x="410", subtitle at x="414". Should be aligned or the intent documented.
| <text x="414" y="252" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="500" font-size="40" fill="#8B949E">Rails asset bundling with modern build systems</text> | |
| <text x="410" y="252" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Arial, sans-serif" font-weight="500" font-size="40" fill="#8B949E">Rails asset bundling with modern build systems</text> |
Code ReviewSummaryClean, low-risk PR that adds the Shakapacker brand asset set and updates the README header. No runtime code paths are affected. Packaging safety ✅Verified both distribution channels are safe:
No gem/package bloat from this PR. README
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: Hero omits dark lockup variant
- Wrapped the README hero image in a picture element with a dark-mode source pointing to lockup-dark.svg while preserving the light fallback.
Or push these changes by commenting:
@cursor push d412285975
Preview (d412285975)
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,6 +1,10 @@
<p align="center">
<a href="https://shakapacker.com">
- <img src="./assets/brand/lockup-light.png?raw=true" alt="Shakapacker: Rails asset bundling with modern build systems" width="760">
+ <picture>
+ <source media="(prefers-color-scheme: dark)" srcset="./assets/brand/lockup-dark.svg?raw=true">
+ <source media="(prefers-color-scheme: light)" srcset="./assets/brand/lockup-light.png?raw=true">
+ <img src="./assets/brand/lockup-light.png?raw=true" alt="Shakapacker: Rails asset bundling with modern build systems" width="760">
+ </picture>
</a>
</p>You can send follow-ups to the cloud agent here.
Reviewed by Cursor Bugbot for commit f93f7a5. Configure here.
| <a href="https://shakapacker.com"> | ||
| <img src="./assets/brand/lockup-light.png?raw=true" alt="Shakapacker: Rails asset bundling with modern build systems" width="760"> | ||
| </a> | ||
| </p> |
There was a problem hiding this comment.
Hero omits dark lockup variant
Low Severity
The README hero is a single light lockup PNG, while this change adds lockup-dark.svg and the PR describes a light/dark hero; on dark-themed viewers the bright light lockup is shown with no prefers-color-scheme alternative.
Reviewed by Cursor Bugbot for commit f93f7a5. Configure here.
|
Code review for PR 1135 - Add Shakapacker Brand Assets. See the full review in the next comment. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f93f7a53ce
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| @@ -1,3 +1,9 @@ | |||
| <p align="center"> | |||
| <a href="https://shakapacker.com"> | |||
| <img src="./assets/brand/lockup-light.png?raw=true" alt="Shakapacker: Rails asset bundling with modern build systems" width="760"> | |||
There was a problem hiding this comment.
Point README logo to a published asset URL
The new top-of-file logo uses a relative path (./assets/brand/lockup-light.png?raw=true), but that file is not shipped in the npm package, so the README image will break in npm-rendered docs. I verified this by running npm pack --dry-run --json, which includes README.md but no assets/brand/* files; consumers viewing the package README will therefore see a broken banner unless the image is referenced via an absolute hosted URL (or the asset is included in published files).
Useful? React with 👍 / 👎.
|
Code Review: Add Shakapacker Brand Assets Overview This PR adds the Shakapacker folded-S brand identity: icon sizes in PNG, SVG mark/tile assets, light/dark lockups, and a brand lockup image near the top of README.md. Root-level discovery files (apple-touch-icon.png, favicon.png, favicon.svg) are provided for tooling like Conductor. Entirely additive — no runtime code paths touched. What's Good
Suggestions 1. Consider dark-mode support in the README via the picture element. The README hardcodes the light lockup PNG. GitHub supports dark/light mode switching via picture+source. The dark SVG (lockup-dark.svg) already exists in this PR. Not blocking — the light-only approach is functional — but worth considering for GitHub users on dark themes. Example: use a picture element with a source tag pointing to lockup-dark.svg for prefers-color-scheme: dark, and the existing PNG as the img fallback. 2. Consider using SVG for the README lockup instead of PNG. lockup-light.svg already exists and scales perfectly at any viewport width without being a 32 KB fixed-resolution raster. SVG is rendered natively by GitHub without any ?raw=true query parameter needed. 3. The ?raw=true suffix on the image path is redundant. For relative image paths in a GitHub README.md, GitHub resolves them correctly without ?raw=true. It will not cause a problem, but it is unnecessary and could confuse future maintainers. 4. No automation to enforce discovery-copy sync. assets/brand/README.md documents the manual sync requirement. The copies are correct right now (verified via diff), but a future contributor updating only the canonical source could silently break parity. A lightweight CI check — a shell script diffing the four pairs — would make this self-enforcing. Low priority given how infrequently brand assets change. Minor Notes
Summary Low risk, well-validated, zero impact on distributions. The main improvement opportunity is dark-mode README support via the picture element — the SVG assets are already in this PR. Suggestions 2–4 are minor polish items. |
Greptile SummaryAdds the Shakapacker folded-S brand asset set: PNG icon sizes (16–1024px), SVG mark/tile/lockup assets, and root discovery copies (
Confidence Score: 4/5Safe to merge — purely static brand assets with no runtime code changes; published packages are unaffected. All changes are documentation and binary/SVG assets. The gemspec and package.json both use explicit allowlists that exclude the new files from published artifacts. The only actionable finding is that the README shows the light lockup to dark-mode GitHub visitors, since the dark variant shipped in the same PR is not wired up. README.md — the light-only lockup image could be upgraded to a picture element now that the dark SVG is available. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A["assets/brand/ (canonical)"] --> B["icon-tile.svg"]
A --> C["mark-transparent.svg"]
A --> D["lockup-light.svg / .png"]
A --> E["lockup-dark.svg"]
A --> F["icon-16/32/64/128/256/512/1024.png"]
B -->|copy| G["favicon.svg (root)"]
F -->|icon-32| H["favicon.png (root)"]
F -->|icon-256| I["apple-touch-icon.png (root)"]
F -->|icon-1024| J["assets/icon.png"]
D -->|used in| K["README.md img src"]
E -.->|not referenced| K
K --> L["GitHub README rendering"]
Reviews (1): Last reviewed commit: "Fix README logo display" | Re-trigger Greptile |
| <p align="center"> | ||
| <a href="https://shakapacker.com"> | ||
| <img src="./assets/brand/lockup-light.png?raw=true" alt="Shakapacker: Rails asset bundling with modern build systems" width="760"> | ||
| </a> | ||
| </p> |
There was a problem hiding this comment.
GitHub natively supports light/dark mode image switching via the
<picture> element with prefers-color-scheme media queries. Since lockup-dark.svg is included in this same PR, dark-mode GitHub users will see the light-background lockup on a dark page. Using a <picture> element would serve the correct asset automatically.
| <p align="center"> | |
| <a href="https://shakapacker.com"> | |
| <img src="./assets/brand/lockup-light.png?raw=true" alt="Shakapacker: Rails asset bundling with modern build systems" width="760"> | |
| </a> | |
| </p> | |
| <p align="center"> | |
| <a href="https://shakapacker.com"> | |
| <picture> | |
| <source media="(prefers-color-scheme: dark)" srcset="./assets/brand/lockup-dark.svg"> | |
| <img src="./assets/brand/lockup-light.png?raw=true" alt="Shakapacker: Rails asset bundling with modern build systems" width="760"> | |
| </picture> | |
| </a> | |
| </p> |
| @@ -1,3 +1,9 @@ | |||
| <p align="center"> | |||
| <a href="https://shakapacker.com"> | |||
| <img src="./assets/brand/lockup-light.png?raw=true" alt="Shakapacker: Rails asset bundling with modern build systems" width="760"> | |||
There was a problem hiding this comment.
The ?raw=true query parameter is redundant for relative image paths in GitHub READMEs — GitHub resolves them correctly without it.
Also worth considering: since lockup-dark.svg is already in this PR, you could support GitHub's dark theme with a <picture> element:
| <img src="./assets/brand/lockup-light.png?raw=true" alt="Shakapacker: Rails asset bundling with modern build systems" width="760"> | |
| <picture> | |
| <source media="(prefers-color-scheme: dark)" srcset="./assets/brand/lockup-dark.svg"> | |
| <img src="./assets/brand/lockup-light.svg" width="760"> | |
| </picture> |
Using the SVG variant for the light fallback would also give crisper rendering at all zoom levels compared to the 32 KB PNG raster.
Code ReviewOverall: Clean, low-risk brand asset addition. The SVG files are well-formed and the sync documentation in Minor Issues
In Enhancement OpportunityREADME could support dark mode with Since both <picture>
<source media="(prefers-color-scheme: dark)" srcset="./assets/brand/lockup-dark.svg">
<img src="./assets/brand/lockup-light.png" alt="Shakapacker: Rails asset bundling with modern build systems" width="760">
</picture>The What's Good
|
…coverage-v1 * origin/main: Teach /update-changelog to drop RC-only regression fixes (#1125) Restructure supplemental package dependencies (#1131) (#1133) [codex] Add Shakapacker brand assets (#1135) [codex] Fix shakapacker config helper binstubs (#1132) Surface v10.1 supplemental packages from README and key docs (#1134) CHANGELOG: merge PR #1120 into PR #1110 entry for v10.1.0-rc.1 (#1126) # Conflicts: # lib/install/bin/diff-bundler-config # lib/install/bin/shakapacker-config # package/configExporter/cli.ts # spec/dummy/bin/shakapacker-config # spec/shakapacker/binstub_sync_spec.rb # spec/shakapacker/helper_binstubs_spec.rb
…nalyze-webpack-output * origin/main: (164 commits) Make Rspack the default bundler for new installs (#1150) Add "Why Shakapacker with Rspack" comparison guide (#1155) Support sass-loader v17 (#1141) [codex] Fix Claude workflow permissions (#1153) Fix README CI badges and add prominent docs link (#1152) Trim README into a docs-site index; relocate content to docs/ and fix deep links (#1148) Tighten helper binstub parity and PATH lookup (#1128) Optimize CI: minimal version matrix on PRs, full matrix on main (#1151) Fix instance-scoped compiler strategies (#1147) Fix Rspack devServer in static watch mode (#1142) Add homepage links for supplemental npm packages (#1145) Release 10.1.0 Update CHANGELOG.md for v10.1.0 (#1139) Expand prerelease-to-stable changelog coalesce guidance in /update-changelog (#1138) Release 10.1.0-rc.2 [codex] Update changelog for v10.1.0-rc.2 (#1136) Teach /update-changelog to drop RC-only regression fixes (#1125) Restructure supplemental package dependencies (#1131) (#1133) [codex] Add Shakapacker brand assets (#1135) [codex] Fix shakapacker config helper binstubs (#1132) ...



Summary
Adds the Shakapacker folded-S brand asset set, including PNG icon sizes, SVG mark/tile assets, and light/dark lockups. Features the light/dark brand lockup near the top of
README.md, making the repo landing page show the new branding immediately. Adds rootapple-touch-icon.png,favicon.png,favicon.svg, andassets/icon.pngso Conductor and other development tools can discover the project icon. Follow-up website rollout is tracked in shakacode/shakapacker.com#20.Pull Request checklist
Add/update test to cover these changesUpdate CHANGELOG fileOther Information
Validation:
all brand assets match source directoryConductor first match: apple-touch-icon.pngnpm pack --dry-run --jsonyarn prettier --check README.md assets/brand/README.mdNote
Low Risk
Low risk: documentation-only change plus new static SVG brand assets; no runtime code paths or security-sensitive logic are modified.
Overview
Adds a centered Shakapacker logo lockup image at the top of
README.mdto brand the repo landing page.Introduces canonical brand asset sources under
assets/brand/(icon tile, mark, and light/dark lockups) plus a rootfavicon.svg, with a smallassets/brand/README.mddescribing how to keep discovery copies in sync for tooling.Reviewed by Cursor Bugbot for commit f93f7a5. Bugbot is set up for automated code reviews on this repo. Configure here.
Summary by CodeRabbit