umbrel
umbrel copied to clipboard
Add bookmark feature to pin webpages to desktop
Overview
This PR adds a bookmark feature that allows users to pin external webpages to their umbrelOS desktop.
Features
- Add bookmarks via desktop context menu
- Auto-fetch metadata: Automatically fetches page title and favicon from URLs
- Custom icons: Upload custom icons or use auto-fetched favicons
- Smart backgrounds: Detects icon edge colors and fills transparent backgrounds
- Edit/Delete: Right-click bookmarks to edit or delete
- External indicator: Visual indicator to distinguish bookmarks from apps
- New tab support: Optional checkbox to open links in new tab
- i18n: Full translations for all 12 supported locales
Technical Details
- Backend: Added TRPC routes for bookmark CRUD operations
- Storage: Bookmarks stored in user preferences
- CORS handling: Favicon/title requests proxied through backend
- CSP: Added data: URLs to img-src for base64 icons
- ID generation: Compact base36 timestamp IDs