A modern, feature-rich wishlist application built with HTML, CSS, JavaScript, and Firebase. Create, share, and manage wishlists with features like drag-and-drop reordering, collaborative editing, and sharing.
- Firebase Authentication - Google OAuth and email/password sign-in
- Real-time Database - Firestore backend with security rules
- Material Design Based UI - Clean, modern interface with light blue theme
- Multiple Lists - Create and manage multiple wishlists
- Collaborative Editing - Share lists with collaborators who can edit
- Viewer Access - Share read-only access with viewers
- List Settings - Manage list name, description, and event dates
- Rich Item Details - Name, description, URL, image, and notes
- Markdown Support - Rich text formatting in notes
- Drag & Drop Reordering - Intuitive item positioning
- Quick Jump - Navigate to specific item positions
- Purchase Tracking - Mark items as bought with buyer information
- Image Support - Display product images
- Multiple Share Options - Links, QR codes, and email sharing
- Role-based Access - Owner, collaborator, and viewer permissions
- Native Mobile Sharing - Platform-specific share menus
- URL-based Access - Direct links to specific lists and items
- Show/Hide Bought Items - Toggle visibility of purchased items
- Buyer Information - Track who bought what with contact details
- Comments System - Allow viewers to comment on items
- Gemini AI Integration - Auto-summarize web pages (API key required)
- Offline Support - Local storage for quick access
- Sign in with Google or create an account
- Click "Create New List"
- Enter list name, event date, and description
- Start adding items with the "Add Item" button
- Click "Add Item" in your list
- Fill in item details:
- Name (required)
- URL (product link or mailto:)
- Description (brief overview)
- Image URL (product photo)
- Notes (supports markdown formatting)
- Position (for ordering)
- Click the share button in the app bar
- Choose sharing method:
- Viewer: Read-only access
- Collaborator: Can edit and add items
- Share via:
- Copy link
- QR code
- Native mobile sharing
- Click the shopping cart icon on any item
- Enter buyer information (name, email, note)
- Item will be marked as bought
- Use the "Show bought items" toggle to view/hide purchased items
- Drag & Drop: Drag items by the handle icon
- Quick Jump: Enter position number to jump to specific items
- URL Fragments: Use
#15in URL to jump to item 15
- Firebase Security Rules ensure data protection
- Role-based Access Control (Owner, Collaborator, Viewer)
- Email-based Permissions for secure sharing
- Secure Authentication with Firebase Auth
- No API Keys in Frontend (except optional Gemini key)
- Chrome 80+
- Firefox 75+
- Safari 13+
- Edge 80+
- Mobile browsers (iOS Safari, Chrome Mobile)
Feel free to:
- Fork the repository
- Add new features
- Submit pull requests
- Report issues
I will try my best to merge PRs and look at issues, and try to fix them, but nobody is perfect, and I have a lot of things to do.
For issues or questions:
- Check the browser console for error messages
- Check network connectivity
Potential future enhancements:
- Amazon wishlist import functionality
- Gift receipt storage system
- Advanced tagging and filtering
- Email notifications for purchases
- Mobile app versions
- Bulk item import
- Advanced analytics and insights
- Offline-first functionality