Skip to content

Conversation

@hharshhsaini
Copy link

Description

Fixes #937

This PR adds a React Error Boundary component to prevent the app from crashing and showing a blank white screen when unhandled JavaScript errors occur.

Changes Made

  • Create ErrorBoundary component that catches JavaScript errors in the component tree
  • Display user-friendly fallback UI with:
    • Error icon and message
    • Collapsible error details for debugging
    • "Reload Application" button to fully recover
    • "Try Again" button to attempt recovery without reload
  • Wrap main App component with ErrorBoundary in main.tsx

Before

Unhandled errors caused the entire app to crash, showing a blank white screen.

After

Errors are caught and a friendly fallback UI is displayed with recovery options.

Testing

To test, trigger an unhandled error (e.g., accessing undefined data):

const brokenData = undefined;
return {brokenData.map(x => x)} // This will be caught by ErrorBoundary

…SSIE-Org#946

- Add PKGBUILD for binary package installation from releases
- Add PKGBUILD-git for building from source
- Add pictopy.install for post-install hooks
- Add .SRCINFO metadata file
- Add publish-aur.yml workflow for automatic AUR publishing
- Update build-and-release.yml to generate tar.gz for AUR
- Update tauri.conf.json to build all Linux targets (deb, rpm, appimage)
- Update README.md with AUR installation instructions

This enables Arch Linux users to install PictoPy via:
  yay -S pictopy
  paru -S pictopy

Closes AOSSIE-Org#946
- Add confirmation dialog with warning message before deleting a folder
- Display folder path in the confirmation dialog
- Show clear warning that the action is irreversible
- Add Cancel and Delete buttons with proper styling
- Disable buttons during deletion to prevent double-clicks

Fixes AOSSIE-Org#939
- Create ErrorBoundary component to catch JavaScript errors
- Display user-friendly fallback UI with error details
- Add 'Reload Application' button to recover from errors
- Add 'Try Again' button to attempt recovery without reload
- Wrap main App component with ErrorBoundary in main.tsx

This prevents the app from showing a blank white screen when
unhandled errors occur (e.g., network failures, missing data).

Fixes AOSSIE-Org#937
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 5, 2026

Warning

Rate limit exceeded

@hharshhsaini has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 14 minutes and 1 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📥 Commits

Reviewing files that changed from the base of the PR and between fe45e2f and 5a64272.

📒 Files selected for processing (13)
  • .github/workflows/build-and-release.yml
  • .github/workflows/publish-aur.yml
  • README.md
  • aur/.SRCINFO
  • aur/PKGBUILD
  • aur/PKGBUILD-git
  • aur/README.md
  • aur/pictopy.install
  • frontend/src-tauri/tauri.conf.json
  • frontend/src/components/ErrorBoundary/ErrorBoundary.tsx
  • frontend/src/components/ErrorBoundary/index.ts
  • frontend/src/main.tsx
  • frontend/src/pages/SettingsPage/components/FolderManagementCard.tsx

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.

@github-actions github-actions bot added enhancement New feature or request frontend labels Jan 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request frontend

Projects

None yet

Development

Successfully merging this pull request may close these issues.

BUG: Missing React Error Boundary causes app crashes

1 participant