Changelog
All notable changes to the Fanfare SDK packages.Versioning
The Fanfare SDK follows Semantic Versioning:- Major (x.0.0) - Breaking changes
- Minor (0.x.0) - New features, backward compatible
- Patch (0.0.x) - Bug fixes
@waitify-io/fanfare-sdk-core@waitify-io/fanfare-sdk-react@waitify-io/fanfare-sdk-solid
[2.0.0] - Latest
Added
- ExperienceJourney state machine for complex consumer journey orchestration
- SolidJS widgets as web components for cross-framework usage
- Nanostores for reactive state management
- Tab synchronization via BroadcastChannel
- Session persistence with automatic restoration
- Typed event system with full TypeScript support
- i18n support with multiple locales and custom translations
- Theme system with CSS custom properties
- Widget variants (default, rounded, retro, clean)
- Slot-based customization for widget components
- useExperienceJourney hook for journey orchestration
- useWaitlist hook for pre-registration flows
- useTimedRelease hook for flash sale windows
Changed
- BREAKING: Renamed
FanfareClienttoFanfarewith staticinit()method - BREAKING: Changed
apiKeyprop topublishableKey - BREAKING: Queue state now returns typed union instead of loose object
- BREAKING: Authentication integrated into SDK (no separate auth package)
- BREAKING: Event names changed from
queue:admittedtoqueue:admittedwith typed payloads - Improved bundle size with tree-shaking support
- React hooks now use nanostores internally
- Better error messages with error codes
Deprecated
FanfareClientclass (useFanfare.init()instead)- Legacy callback-based event handling
Removed
@waitify-io/fanfare-clientpackage (replaced by-sdk-core)@waitify-io/fanfare-client-reactpackage (replaced by-sdk-react)
Fixed
- Memory leak in queue subscription cleanup
- Race condition in session restoration
- Position updates not reflecting immediately
- Auction bid validation edge cases
Migration
See V1 to V2 Migration Guide for detailed instructions.[1.5.0]
Added
- Draw distribution type support
- Auction bid history API
- Estimated wait time display
Changed
- Improved queue position accuracy
- Better error handling for network failures
Fixed
- Session expiry not handled correctly
- Queue position NaN in edge cases
[1.4.0]
Added
- TypeScript type exports
- React 18 support
- Custom metadata for queue entries
Changed
- Updated dependencies
- Improved performance of position updates
Fixed
- React hooks causing unnecessary re-renders
- Memory leak in event listeners
[1.3.0]
Added
- Queue admission expiry handling
- Consumer analytics events
- Development mode logging
Changed
- Reduced bundle size by 15%
- Improved reconnection logic
Fixed
- WebSocket disconnection not triggering reconnect
- Position reset on page refresh
[1.2.0]
Added
- Offline support with queue restoration
- Custom queue entry data
- Admission token refresh
Changed
- Better TypeScript generics
- Improved error messages
Fixed
- Race condition in concurrent entries
- Event listener cleanup
[1.1.0]
Added
- React hooks (
useQueue,useDraw) - Provider component for context
- Development mode warnings
Fixed
- Initial queue state not loading
- Authentication flow errors
[1.0.0]
Added
- Initial release
- Queue management API
- Session management
- Event subscription system
- React integration
Upgrade Guide
Upgrading to 2.x
-
Update dependencies:
-
Update imports:
-
Update initialization:
-
Update React provider:
Support Policy
| Version | Status | End of Support |
|---|---|---|
| 2.x | Current | - |
| 1.x | Maintenance | TBD |
Reporting Issues
Found a bug? Please report it:- Check existing issues
- Create a new issue with reproduction steps
- Include SDK version and environment details
Related
- Migration Overview - Migration guides
- Core SDK - Current API reference
- React SDK - React integration