hyprnote icon indicating copy to clipboard operation
hyprnote copied to clipboard

fix: show static.webp fallback for mobile features carousel

Open ComputelessComputer opened this issue 1 month ago β€’ 4 comments

Summary

Fixed an issue where the static gif/webp fallback was not showing for features without images in the mobile view of the features section.

The FeaturesDesktopGrid component already had a fallback to display /api/images/hyprnote/static.webp when a feature doesn't have an image (e.g., "Coming Soon" features like Floating Panel and Daily Note). However, FeaturesMobileCarousel was only conditionally rendering when feature.image existed, leaving an empty container for features without images.

This change adds the same fallback pattern to the mobile carousel, making it consistent with the desktop grid behavior.

Review & Testing Checklist for Human

  • [ ] Verify the static.webp displays correctly on mobile viewport for "Floating Panel" and "Daily Note" features (the Coming Soon items)
  • [ ] Confirm the object-cover styling looks appropriate on mobile screens

Notes

  • Link to Devin run: https://app.devin.ai/sessions/c100534211794c7aab7689bdcdcb4d40
  • Requested by: [email protected] (@ComputelessComputer)

ComputelessComputer avatar Dec 01 '25 08:12 ComputelessComputer

πŸ€– Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

βœ… I will automatically:

  • Address comments on this PR that start with 'DevinAI' or '@devin'.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

βš™οΈ Control Options:

  • [ ] Disable automatic comment and CI monitoring

Deploy Preview for hyprnote-storybook ready!

Name Link
Latest commit e1e52b5d0e1534d21f4846014f8da36627f8f2f1
Latest deploy log https://app.netlify.com/projects/hyprnote-storybook/deploys/692d5856c39aba000835368f
Deploy Preview https://deploy-preview-2046--hyprnote-storybook.netlify.app
Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

netlify[bot] avatar Dec 01 '25 08:12 netlify[bot]

Deploy Preview for hyprnote ready!

Name Link
Latest commit e1e52b5d0e1534d21f4846014f8da36627f8f2f1
Latest deploy log https://app.netlify.com/projects/hyprnote/deploys/692d5856ce047400072921dd
Deploy Preview https://deploy-preview-2046--hyprnote.netlify.app
Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

netlify[bot] avatar Dec 01 '25 08:12 netlify[bot]

πŸ“ Walkthrough

Walkthrough

The FeaturesMobileCarousel component's image rendering is updated to handle missing images via a fallback. When feature.image exists, it renders as before; otherwise, it renders a fallback img element pointing to a static image with object-fit: cover instead of the previous object-contain.

Changes

Cohort / File(s) Summary
Image fallback rendering
apps/web/src/routes/_view/index.tsx
Updated conditional rendering to provide fallback img element when feature.image is unavailable; changed object-fit from object-contain to object-cover

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

  • Verify the fallback image path is correct and accessible
  • Confirm object-fit: cover styling is intentional and doesn't break layout in edge cases
  • Check if this fallback applies to all feature carousel instances as intended

Possibly related PRs

  • #2002: Modifies FeaturesMobileCarousel component with progress/auto-advance functionality and signature updatesβ€”shares the same component but addresses different concerns.

Pre-merge checks and finishing touches

❌ 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%. You can run @coderabbitai generate docstrings to improve docstring coverage.
βœ… Passed checks (2 passed)
Check name Status Explanation
Title check βœ… Passed The title clearly describes the main change: adding a static.webp fallback display to the mobile features carousel, which is the primary modification in the changeset.
Description check βœ… Passed The description is well-related to the changeset, explaining the issue fixed, the implementation approach, and providing testing checklist and context.
✨ Finishing touches
  • [ ] πŸ“ Generate docstrings
πŸ§ͺ Generate unit tests (beta)
  • [ ] Create PR with unit tests
  • [ ] Post copyable unit tests in a comment
  • [ ] Commit unit tests in branch devin/1764579179-fix-mobile-static-gif

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

coderabbitai[bot] avatar Dec 01 '25 08:12 coderabbitai[bot]