Skip to main content

Sharing favorites

WallWidgy lets you share your favorites collection with others using shareable links. Anyone with the link can view your curated collection.

How sharing works

When you share your favorites:
  1. Your favorites are accessible via your username
  2. Anyone can view your collection at /share/[username]
  3. Your profile information is displayed (name, avatar)
  4. Visitors can browse your favorites in the standard grid
  5. Your favorites remain synced with your account
Favorites are stored in Clerk’s public metadata, making them accessible to anyone who knows your username. Consider this when favoriting wallpapers.

Sharing your collection

1

Sign in to WallWidgy

Create an account or sign in with Clerk authentication to enable cloud sync
2

Add favorites

Favorite wallpapers you want to include in your shared collection
3

Share your username

Share the URL: https://wallwidgy.vercel.app/share/[your-username]
4

Update anytime

Your shared collection automatically updates as you add or remove favorites

Viewing shared collections

When someone shares their favorites with you:
1

Click the share link

Open the link they provided (e.g., /share/johndoe)
2

View profile information

See the user’s display name, avatar, and total favorites count
3

Browse their collection

Explore wallpapers in the same grid layout as the main site
4

Interact with wallpapers

Click wallpapers to view fullscreen, download, or add to your own favorites

Share page features

The share page displays:

User profile

Display name, username, and profile picture from Clerk

Favorites count

Total number of wallpapers in the collection

Wallpaper grid

Standard WallpaperGrid with all browsing features

Loading states

Loading indicators and error handling for missing users

API endpoint

The share page uses the public API endpoint:
GET /api/favorites/[username]
This returns:
{
  "username": "johndoe",
  "displayName": "John",
  "imageUrl": "https://img.clerk.com/...",
  "favorites": ["id1", "id2", "id3"],
  "favoritesCount": 3
}
See the API documentation for details.

Privacy considerations

Favorites are publicly accessible to anyone who knows your username. There is no option to make favorites private.
Be aware that:
  • Anyone can view your favorites if they know your username
  • Favorites are visible on the share page without authentication
  • Changes to your favorites are immediately reflected
  • There’s no way to hide or protect your favorites list

Error handling

The share page handles various error states:
Displays “User not found” message when the username doesn’t exist
Shows empty state when user has no favorites yet
Displays “Failed to load favorites” if the API request fails

Building on sharing

You can use the favorites API to build:

Community features

  • Curated collections from power users
  • Featured favorites on a landing page
  • User galleries and portfolios

Discovery features

  • Similar users based on overlapping favorites
  • Popular wallpapers across all users
  • Trending favorites over time

Social features

  • Follow other users’ collections
  • Notifications for new favorites from followed users
  • Comments or likes on shared collections

Example implementation

Fetch and display a user’s favorites:
async function loadSharedFavorites(username) {
  const response = await fetch(
    `https://wallwidgy.vercel.app/api/favorites/${encodeURIComponent(username)}`
  );
  
  if (response.status === 404) {
    console.log('User not found');
    return;
  }
  
  const data = await response.json();
  
  console.log(`${data.displayName}'s Favorites`);
  console.log(`Total: ${data.favoritesCount}`);
  
  // Display wallpapers from data.favorites array
}
Create themed collections by curating favorites around specific styles, colors, or categories, then share with others who appreciate that aesthetic.

See also

Build docs developers (and LLMs) love