The biggest update to Giggly yet! This release introduces Promoter Channels, Following Feed, and over 140 improvements across the platform.
🎉 Major Feature: Promoter Channels
Promoter channels allow promoters to manage their own presence on the platform, build their audience, and communicate directly with followers.
Promoter Channels (/promoters/:slug)
- Dedicated pages for promoters with Info, Events, and Announcements tabs
- Follow/subscribe to promoter channels to get updates in your Following feed
- Promoter branding: icon upload, description, social links, city, genres, categories
- Staff management: promoters can add owners and admins to help manage their channel
- In-page editing for verified promoters (no page refresh needed)
- Public channel visibility controls (approved/pending/rejected, visible on channels list, private channels)
- Announcements: promoters can post updates to their subscribers
Following Feed (/feed)
- New dedicated feed showing events from promoters you follow
- All Events vs Following tabs
- Search across followed promoters
- Share events directly from feed with flyer images
Dual Promoter Support
- Events can now have up to 2 promoters displayed
- Promoter rows show on event cards and detail pages
- Click promoter names to visit their channel
Bottom Bar Navigation
- New feed icon in bottom navigation
- Redesigned layout with feed positioned between calendar and add button
- Improved alignment and spacing
Admin Features
- Promoter admin page for platform staff
- User search autocomplete when adding staff to promoters
- Bulk promoter management and approval workflows
- Parent genres master list (admin-editable genre taxonomy)
🎨 UI/UX Improvements
Event Cards & Lists
- View Details button on mini event cards
- Improved promoter row layout with avatars and names
- Better month navigation with cross-year abbreviations
- Stable tab count pills (no layout shift)
Search & Performance
- Debounced search (300ms) across feed and tag hub
- Faster iOS keyboard handling (no layout jumps)
- Ranked feed search (artist-first matching)
- Row-level filtering for instant results
iOS & Mobile
- Fixed keyboard overlay issues (search stays visible)
- Stopped chrome jumping when keyboard opens
- Better touch scrolling
- Stable visualViewport handling
Share Functionality
- Rich desktop clipboard (text + HTML + flyer image)
- Web Share API integration on mobile
- Event attribution line ("Shared from giggly")
- Share button in icons row
📱 Event Management
Add/Edit Events
- Recurring dates for elevated roles (consecutive nights only)
- Multiple nights clarification in UI
- Genre field hidden until next release (backend ready)
- Better validation UX
🔧 Technical Improvements
Performance
- Reduced first-paint flicker on feed tabs
- Faster following feed paint
- Eliminated event.html load flash
- Stable flyer rendering
- Debounced heavy DOM operations
New APIs
- Parent genres API
- Promoter channels API
- Follow/unfollow API
- User search API
- Channel roster API for member management
Database Migrations (027-036)
- Promoters table with profiles, visibility, staff
- Promoter members table (owner/admin roles)
- User follows promoter table for subscriptions
- Parent genres table (canonical genre list)
- Event promoter_id_2 for dual promoters
- Categories JSON and genres JSON on promoters
🐛 Bug Fixes
Navigation
- Fixed promoter list redirects and scroll loops
- Fixed Safari /feed redirect loop
- Stopped flash when navigating to promoter channels
- Fixed back navigation from promoter channel edit
Display Issues
- Fixed promoter channel hero showing both megaphone SVGs
- Fixed Promoters tab blank screen
- Fixed login flow for promoter composers
- Fixed iOS text UI on search fields
- Removed empty band under ticket wallet bottom bar
Search & Filtering
- Cancelled stale list paints during search
- Fixed tag hub search driving parent bar
- Fixed All tab switch performance
🎯 Admin & Management
- Moved admin pages to
/admin/directory (venues, tickets, import, uploads, users, promoters) - Owner-only access controls
- Category filter persistence to database (removed localStorage)
- Event sharing for unauthenticated users with Open Graph meta tags
📊 Stats
- 140+ commits since last release
- 13,000+ lines added across 63 files
- 10 new API endpoints
- 9 database migrations
- Major features: Promoter Channels, Following Feed, Dual Promoters
⚠️ Deployment Notes
Feature Flags:
- Promoter channels enabled for all users
- Genre picker hidden on add/edit event (backend ready, UI deferred)
Built with ❤️ for the Brighton music community.