Add Twelve Tools footer badge#71
Merged
Merged
Conversation
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.
Original request
Use
$pr-workflow, without a blog post, to add a Twelve Tools footer badge linking tohttps://twelve.toolswith the supplied dark and white hosted SVG variants for dark and light themes. After the first CI run exposed an expired date fixture, fix the build as well.Summary
Adds a Twelve Tools featured badge to the public landing page footer badge group and makes the budget invitation-status test deterministic so CI remains stable after its fixture date passes.
What changed
apps/web/components/landing-page.tsxusing the supplied hosted SVG URLs and 200×54 dimensions.TwelveToolsBadgefooter component that shows the white-background SVG in light mode and the dark-background SVG in dark mode using the existing Tailwind theme pattern.FooterBadgesgroup.apps/web/components/landing-page.test.tsxto verify the link, target, rel attributes, image URLs, dimensions, and light/dark visibility classes.Reasoning
The badge implementation follows the existing hosted footer badge pattern instead of introducing a new abstraction for a one-off addition. It keeps Twelve Tools' hosted assets and exact supplied dimensions, adds
noopener noreferrerfor a safe externaltarget="_blank"link, and avoids Next.js remote image configuration for a tiny vendor-provided footer badge.The test fix controls time explicitly because the assertion depends on whether an invitation is expired. This preserves the intended pending-status scenario and prevents the build from changing behavior as wall-clock time advances.
Blog post
Skipped. The user explicitly requested that no blog post be added for this badge update.
Validation
npm test -- apps/api/src/application/budgets.test.ts apps/web/components/landing-page.test.tsxnpm run lintnpm run typechecknpm test— 94 files and 516 tests passed.Lint and testDeploy PR environmentPlaywright e2ehttps://xpenser-pr-071.cleverbrush.comxpenser-web-pr-71: recent homepage traces were present with 200 responses and no error traces found.http.server.duration.countseries were indexed forxpenser-web-pr-71.Screenshots / Preview
Preview QA confirmed:
Featured on Twelve Toolslinking tohttps://twelve.tools/withtarget="_blank"andrel="noopener noreferrer".badge0-white.svgand hidesbadge0-dark.svg.badge0-white.svgand displaysbadge0-dark.svg.Screenshots captured during Playwright QA:
/tmp/twelve-tools-footer-qa/twelve-tools-footer-light.png/tmp/twelve-tools-footer-qa/twelve-tools-footer-dark.pngChecklist