Skip to content

style(frontend): remove card shadows and unify card grid spacing#2154

Open
stackingsaunter wants to merge 4 commits intogetAlby:masterfrom
stackingsaunter:style/card-shadows-and-spacing
Open

style(frontend): remove card shadows and unify card grid spacing#2154
stackingsaunter wants to merge 4 commits intogetAlby:masterfrom
stackingsaunter:style/card-shadows-and-spacing

Conversation

@stackingsaunter
Copy link
Contributor

@stackingsaunter stackingsaunter commented Mar 20, 2026

Summary

  • Remove drop shadows from the shared Card component (shadow-smshadow-none) and from UpgradeCard.
  • Set spacing between card groups to Tailwind gap-3 (12px) across grids that lay out multiple cards (home, apps, sub-wallets, setup, etc.).

Notes

  • Intentionally does not change shadows on dialogs, popovers, inputs, etc.
  • Inner Card section spacing (header/content) is unchanged.

Made with Cursor

Summary by CodeRabbit

  • Style

    • Reduced card shadow styling across the app for a flatter visual design.
    • Refined layout spacing across many screens and components for more consistent, tighter spacing.
  • Chores

    • Updated CI/CD workflows to improve macOS build reliability and code-signing/release handling.

- Use shadow-none on shadcn Card and drop shadow-xs on UpgradeCard
- Standardize spacing between card groups to gap-3 (12px) across grids

Made-with: Cursor
Select Xcode.app before CGO so Wails WebKit uses the full SDK (avoids
Foundation parsed as C on CLT-only toolchains).

Skip Apple signing/notarize/DMG when the PR head is a fork; upload an
unsigned zip instead. Add fail-fast: false to the HTTP build matrix.

Made-with: Cursor
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 20, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: c8f0f959-7dca-46d3-abf0-9cbc09feb364

📥 Commits

Reviewing files that changed from the base of the PR and between 0086362 and b5bd185.

📒 Files selected for processing (2)
  • .github/workflows/http.yml
  • .github/workflows/wails.yml
🚧 Files skipped from review as they are similar to previous changes (1)
  • .github/workflows/wails.yml

📝 Walkthrough

Walkthrough

Consistent Tailwind spacing adjustments across many frontend components (standardizing to gap-3 in many places), tweaks to card shadow classes, and updates to GitHub Actions workflows to improve macOS build handling and restrict code-signing for forked PRs.

Changes

Cohort / File(s) Summary
Frontend — spacing (grid gaps)
frontend/src/components/connections/AppDetailConnectedApps.tsx, frontend/src/components/connections/AppUsage.tsx, frontend/src/components/connections/ConnectedApps.tsx, frontend/src/components/connections/SuggestedApps.tsx, frontend/src/screens/ConnectAlbyAccount.tsx, frontend/src/screens/Home.tsx, frontend/src/screens/alby/SupportAlby.tsx, frontend/src/screens/apps/AppDetails.tsx, frontend/src/screens/apps/AppsCleanup.tsx, frontend/src/screens/appstore/AppStoreDetail.tsx, frontend/src/screens/internal-apps/Tictactoe.tsx, frontend/src/screens/internal-apps/ZapPlanner.tsx, frontend/src/screens/setup/SetupNode.tsx, frontend/src/screens/subwallets/SubwalletCreated.tsx, frontend/src/screens/subwallets/SubwalletList.tsx
Standardized grid gap classes: various gap-2, gap-4, gap-5, gap-6gap-3 to unify component spacing. No logic or API changes.
Frontend — card shadow & styling
frontend/src/components/CardButton.tsx, frontend/src/components/UpgradeCard.tsx, frontend/src/components/ui/card.tsx
Adjusted card shadow classes: Card default class changed from shadow-smshadow-none; CardButton removed an explicit shadow-none; UpgradeCard removed shadow-xs. Visual-only changes.
CI/CD — GitHub Actions workflows
.github/workflows/http.yml, .github/workflows/wails.yml
Added macOS-specific xcode-select step for CGO/WebKit builds; disabled matrix fail-fast for build; tightened conditions so macOS code-signing/notarization run only for non-fork PRs (and gated by workflow_call input where applicable); added unsigned artifact handling for forked PRs.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 I hopped through gaps to tidy the view,

Cards lost their shadows and breathed something new,
Workflows now check who's knocking the door,
Forks get a zip, mac builds get more,
I nibble on changes — tidy, safe, and few.

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and accurately summarizes the main changes: removing card shadows and unifying card grid spacing across the frontend.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
📝 Coding Plan
  • Generate coding plan for human review comments

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
.github/workflows/http.yml (1)

136-143: ⚠️ Potential issue | 🟠 Major

build-release is now ignored for called macOS builds.

On workflow_call, the new predicates on Line 137 and Line 174 are always true, so the workflow still imports certs and codesigns when callers pass build-release: false. Line 198 still respects the input, so non-release calls now produce a partially release-processed artifact instead of a plain dev build.

Suggested fix
-        if: runner.os == 'macOS' && (github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false)
+        if: runner.os == 'macOS' && (github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false) && (github.event_name != 'workflow_call' || inputs.build-release)

Use the same predicate on both the certificate import and codesign steps.

Also applies to: 173-181

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/http.yml around lines 136 - 143, The "Import Code-Signing
Certificates for macOS" step (and the corresponding codesign step) uses a
predicate that always evaluates true for workflow_call callers, so it ignores
the inputs.build-release flag; update the if condition on the "Import
Code-Signing Certificates for macOS" step and the macOS codesign step to include
the release input check (e.g., append && inputs.build-release == 'true'),
ensuring both steps only run when runner.os == 'macOS' AND the caller requested
build-release.
.github/workflows/wails.yml (1)

137-145: ⚠️ Potential issue | 🟠 Major

Keep build-release in the macOS release predicates.

workflow_call sets github.event_name to workflow_call, so the new checks on Line 138, Line 199, Line 209, Line 225, Line 239, and Line 266 all evaluate true even when a caller passes build-release: false. That makes the input ineffective and forces signing, DMG creation, notarization, and signed-artifact upload for non-release calls.

Suggested fix
-        if: runner.os == 'macOS' && (github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false)
+        if: runner.os == 'macOS' && (github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false) && (github.event_name != 'workflow_call' || inputs.build-release)

Apply the same predicate to every release-only macOS step, including the signed artifact upload, so non-release workflow_call builds stay on the unsigned path.

Also applies to: 198-209, 224-239, 265-271

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/wails.yml around lines 137 - 145, Update each macOS
"release-only" step (e.g., the step named "Import Code-Signing Certificates for
macOS" and the macOS DMG/notarize/signed-artifact upload steps) to add a
predicate that respects the reusable-workflow input so non-release workflow_call
invocations stay unsigned; specifically, extend the existing if condition to
require the release input when event_name == "workflow_call" (for example: keep
the existing runner.os == 'macOS' check AND require that either the event is not
workflow_call or inputs.build-release == 'true', while preserving the existing
pull_request/fork logic).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Outside diff comments:
In @.github/workflows/http.yml:
- Around line 136-143: The "Import Code-Signing Certificates for macOS" step
(and the corresponding codesign step) uses a predicate that always evaluates
true for workflow_call callers, so it ignores the inputs.build-release flag;
update the if condition on the "Import Code-Signing Certificates for macOS" step
and the macOS codesign step to include the release input check (e.g., append &&
inputs.build-release == 'true'), ensuring both steps only run when runner.os ==
'macOS' AND the caller requested build-release.

In @.github/workflows/wails.yml:
- Around line 137-145: Update each macOS "release-only" step (e.g., the step
named "Import Code-Signing Certificates for macOS" and the macOS
DMG/notarize/signed-artifact upload steps) to add a predicate that respects the
reusable-workflow input so non-release workflow_call invocations stay unsigned;
specifically, extend the existing if condition to require the release input when
event_name == "workflow_call" (for example: keep the existing runner.os ==
'macOS' check AND require that either the event is not workflow_call or
inputs.build-release == 'true', while preserving the existing pull_request/fork
logic).

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 9ca146f0-113f-44f0-8d5e-67d6d800f6e7

📥 Commits

Reviewing files that changed from the base of the PR and between c75ae35 and 0086362.

📒 Files selected for processing (2)
  • .github/workflows/http.yml
  • .github/workflows/wails.yml

Gate cert import, codesign, DMG, notarize, and signed DMG upload on
inputs.build-release when the event is workflow_call. Keeps fork PR
unsigned zip path; push and internal PR behavior unchanged.

Made-with: Cursor
Revert CI changes that attempted to fix macOS build failures;
keep PRs focused on frontend changes.

Made-with: Cursor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant