# πŸ“š ROADMAP STORYBOOK 100% COVERAGE **Projet**: Veza Music Platform **Objectif**: Couverture complΓ¨te de tous les composants **DurΓ©e**: 12 semaines **Date de dΓ©but**: 3 FΓ©vrier 2026 **Date cible de fin**: 27 Avril 2026 --- ## πŸ“Š Vue d'Ensemble | MΓ©trique | Actuel | Cible | Gap | |----------|--------|-------|-----| | **Stories** | 164 | 344 | +180 | | **Composants** | 384 | 384 | - | | **Couverture** | 42% | 100% | +58% | | **Heures estimΓ©es** | - | 270h | ~23h/semaine | ### Progression Hebdomadaire CiblΓ©e ``` Semaine 1 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 47% (+5%) Semaine 2 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 52% (+5%) Semaine 3 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 57% (+5%) Semaine 4 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 62% (+5%) Semaine 5 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 67% (+5%) Semaine 6 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ 72% (+5%) Semaine 7 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–‘β–‘β–‘β–‘β–‘β–‘ 77% (+5%) Semaine 8 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–‘β–‘β–‘β–‘ 82% (+5%) Semaine 9 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–‘β–‘ 87% (+5%) Semaine 10 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–‘ 92% (+5%) Semaine 11 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“ 96% (+4%) Semaine 12 β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“ 100% (+4%) ``` --- ## 🎯 Milestones | Milestone | Date | Couverture | Description | |-----------|------|------------|-------------| | **M1** | 16 FΓ©v 2026 | 52% | Pages critiques + Admin | | **M2** | 9 Mars 2026 | 67% | Core Features (Player, Playlists, Tracks) | | **M3** | 30 Mars 2026 | 82% | Full Features (Upload, Chat, Settings) | | **M4** | 27 Avr 2026 | 100% | Couverture complΓ¨te | --- ## πŸ“… SPRINT 1 - Pages Critiques & Erreurs **Dates**: 3-9 FΓ©vrier 2026 **PrioritΓ©**: πŸ”΄ P0 (Critique) **Heures**: 18h **Objectif**: Couvrir toutes les pages d'erreur et d'authentification ### Composants Γ  CrΓ©er | # | Composant | Chemin | Effort | Heures | Variants | |---|-----------|--------|--------|--------|----------| | 1 | NotFoundPage | `src/features/error/pages/NotFoundPage.tsx` | 🟒 Low | 1h | Default, WithSuggestions | | 2 | ServerErrorPage | `src/features/error/pages/ServerErrorPage.tsx` | 🟒 Low | 1h | Default, WithRetry, NetworkError | | 3 | LoginPage | `src/features/auth/pages/LoginPage.tsx` | 🟑 Medium | 2h | Default, WithError, Loading | | 4 | RegisterPage | `src/features/auth/pages/RegisterPage.tsx` | 🟑 Medium | 2h | Default, WithError, Success | | 5 | ForgotPasswordPage | `src/features/auth/pages/ForgotPasswordPage.tsx` | 🟑 Medium | 2h | Default, Sent, Error | | 6 | ResetPasswordPage | `src/features/auth/pages/ResetPasswordPage.tsx` | 🟑 Medium | 2h | Default, Success, InvalidToken | | 7 | VerifyEmailPage | `src/features/auth/pages/VerifyEmailPage.tsx` | 🟒 Low | 1.5h | Pending, Verified, Error | | 8 | ForgotPasswordForm | `src/features/auth/components/ForgotPasswordForm.tsx` | 🟑 Medium | 1.5h | Default, Loading, Success | | 9 | TwoFactorVerify | `src/features/auth/components/TwoFactorVerify.tsx` | 🟑 Medium | 2h | Default, Error, Loading | | 10 | TwoFactorSetup | `src/features/auth/components/TwoFactorSetup.tsx` | 🟑 Medium | 2h | QRCode, Verification, Complete | | 11 | AuthErrorMessage | `src/features/auth/components/AuthErrorMessage.tsx` | 🟒 Low | 1h | Default, Network, Validation | ### Checklist Sprint 1 - [ ] NotFoundPage.stories.tsx - [ ] ServerErrorPage.stories.tsx - [ ] LoginPage.stories.tsx - [ ] RegisterPage.stories.tsx - [ ] ForgotPasswordPage.stories.tsx - [ ] ResetPasswordPage.stories.tsx - [ ] VerifyEmailPage.stories.tsx - [ ] ForgotPasswordForm.stories.tsx - [ ] TwoFactorVerify.stories.tsx - [ ] TwoFactorSetup.stories.tsx - [ ] AuthErrorMessage.stories.tsx **Couverture attendue**: 42% β†’ 47% --- ## πŸ“… SPRINT 2 - Dashboard & Admin **Dates**: 10-16 FΓ©vrier 2026 **PrioritΓ©**: πŸ”΄ P0 (Critique) **Heures**: 20h **Objectif**: Couvrir le dashboard et toutes les vues admin ### Composants Γ  CrΓ©er | # | Composant | Chemin | Effort | Heures | Variants | |---|-----------|--------|--------|--------|----------| | 1 | DashboardPage | `src/features/dashboard/pages/DashboardPage.tsx` | πŸ”΄ High | 3h | Default, Loading, Empty | | 2 | AdminDashboardView | `src/components/admin/AdminDashboardView.tsx` | πŸ”΄ High | 3h | Default, Loading | | 3 | AdminUsersView | `src/components/admin/AdminUsersView.tsx` | πŸ”΄ High | 3h | Default, Empty, Loading, WithFilters | | 4 | AdminModerationView | `src/components/admin/AdminModerationView.tsx` | πŸ”΄ High | 3h | Default, Queue, Empty | | 5 | AdminSettingsView | `src/components/admin/AdminSettingsView.tsx` | 🟑 Medium | 2h | Default, Saving | | 6 | AdminAuditLogsView | `src/components/admin/AdminAuditLogsView.tsx` | 🟑 Medium | 2h | Default, Filtered, Empty | | 7 | AdminView | `src/components/views/AdminView.tsx` | 🟑 Medium | 2h | Default | | 8 | BanUserModal | `src/components/admin/BanUserModal.tsx` | 🟑 Medium | 1.5h | Default, Confirm | | 9 | UserTableRow | `src/components/admin/UserTableRow.tsx` | 🟒 Low | 1h | Default, Selected, Banned | ### Checklist Sprint 2 - [ ] DashboardPage.stories.tsx - [ ] AdminDashboardView.stories.tsx - [ ] AdminUsersView.stories.tsx - [ ] AdminModerationView.stories.tsx - [ ] AdminSettingsView.stories.tsx - [ ] AdminAuditLogsView.stories.tsx - [ ] AdminView.stories.tsx - [ ] BanUserModal.stories.tsx - [ ] UserTableRow.stories.tsx **Couverture attendue**: 47% β†’ 52% --- ## πŸ“… SPRINT 3 - Player & Playback **Dates**: 17-23 FΓ©vrier 2026 **PrioritΓ©**: 🟠 P1 (Haute) **Heures**: 18h **Objectif**: ComplΓ©ter la couverture du player ### Composants Γ  CrΓ©er | # | Composant | Chemin | Effort | Heures | Variants | |---|-----------|--------|--------|--------|----------| | 1 | AudioPlayer | `src/features/player/components/AudioPlayer.tsx` | πŸ”΄ High | 3h | Playing, Paused, Loading, Error | | 2 | FullPlayer | `src/components/player/FullPlayer.tsx` | πŸ”΄ High | 3h | Default, WithQueue, WithLyrics | | 3 | PlayerError | `src/features/player/components/PlayerError.tsx` | 🟒 Low | 1h | NetworkError, FormatError, Generic | | 4 | PlaybackSpeedControl | `src/features/player/components/PlaybackSpeedControl.tsx` | 🟒 Low | 1h | Default, 1x, 1.5x, 2x | | 5 | QueuePanel | `src/components/player/QueuePanel.tsx` | 🟑 Medium | 2h | Default, Empty, Reordering | | 6 | QueueView | `src/components/views/QueueView.tsx` | 🟑 Medium | 2h | Default, Empty | | 7 | SaveQueueAsPlaylistModal | `src/components/player/SaveQueueAsPlaylistModal.tsx` | 🟑 Medium | 1.5h | Default, Saving, Success | | 8 | LyricsPanel | `src/components/studio/LyricsPanel.tsx` | 🟑 Medium | 1.5h | Default, Synced, Empty | ### Checklist Sprint 3 - [ ] AudioPlayer.stories.tsx - [ ] FullPlayer.stories.tsx - [ ] PlayerError.stories.tsx - [ ] PlaybackSpeedControl.stories.tsx - [ ] QueuePanel.stories.tsx - [ ] QueueView.stories.tsx - [ ] SaveQueueAsPlaylistModal.stories.tsx - [ ] LyricsPanel.stories.tsx **Couverture attendue**: 52% β†’ 57% --- ## πŸ“… SPRINT 4 - Playlists Complet **Dates**: 24 FΓ©vrier - 2 Mars 2026 **PrioritΓ©**: 🟠 P1 (Haute) **Heures**: 20h **Objectif**: 100% couverture feature playlists ### Composants Γ  CrΓ©er | # | Composant | Chemin | Effort | Heures | Variants | |---|-----------|--------|--------|--------|----------| | 1 | PlaylistList | `src/features/playlists/components/PlaylistList.tsx` | πŸ”΄ High | 2.5h | Default, Grid, Empty, Loading | | 2 | PlaylistDetailPage | `src/features/playlists/pages/PlaylistDetailPage.tsx` | πŸ”΄ High | 3h | Default, Loading, NotFound | | 3 | PlaylistListPage | `src/features/playlists/pages/PlaylistListPage.tsx` | πŸ”΄ High | 2.5h | Default, Empty, Loading | | 4 | PlaylistTrackList | `src/features/playlists/components/PlaylistTrackList.tsx` | πŸ”΄ High | 2.5h | Default, Empty, Reordering | | 5 | PlaylistTrackItem | `src/features/playlists/components/PlaylistTrackItem.tsx` | 🟑 Medium | 1.5h | Default, Playing, Selected | | 6 | PlaylistSearch | `src/features/playlists/components/PlaylistSearch.tsx` | 🟑 Medium | 1.5h | Default, WithResults | | 7 | PlaylistRecommendations | `src/features/playlists/components/PlaylistRecommendations.tsx` | 🟑 Medium | 1.5h | Default, Empty | | 8 | AddCollaboratorModal | `src/features/playlists/components/AddCollaboratorModal.tsx` | 🟑 Medium | 1.5h | Default, Searching, Added | | 9 | CollaboratorList | `src/features/playlists/components/CollaboratorList.tsx` | 🟒 Low | 1h | Default, Empty | | 10 | SharePlaylistModal | `src/features/playlists/components/SharePlaylistModal.tsx` | 🟑 Medium | 1.5h | Default, Copied | ### Checklist Sprint 4 - [ ] PlaylistList.stories.tsx - [ ] PlaylistDetailPage.stories.tsx - [ ] PlaylistListPage.stories.tsx - [ ] PlaylistTrackList.stories.tsx - [ ] PlaylistTrackItem.stories.tsx - [ ] PlaylistSearch.stories.tsx - [ ] PlaylistRecommendations.stories.tsx - [ ] AddCollaboratorModal.stories.tsx - [ ] CollaboratorList.stories.tsx - [ ] SharePlaylistModal.stories.tsx **Couverture attendue**: 57% β†’ 62% --- ## πŸ“… SPRINT 5 - Tracks & Search **Dates**: 3-9 Mars 2026 **PrioritΓ©**: 🟠 P1 (Haute) **Heures**: 18h **Objectif**: ComplΓ©ter tracks et recherche ### Composants Γ  CrΓ©er | # | Composant | Chemin | Effort | Heures | Variants | |---|-----------|--------|--------|--------|----------| | 1 | TrackDetailPage | `src/features/tracks/pages/TrackDetailPage.tsx` | πŸ”΄ High | 3h | Default, Loading, NotFound | | 2 | TrackSearch | `src/features/tracks/components/TrackSearch.tsx` | πŸ”΄ High | 2.5h | Default, WithResults, NoResults | | 3 | TrackSearchResults | `src/features/tracks/components/TrackSearchResults.tsx` | πŸ”΄ High | 2h | Default, Empty, Loading | | 4 | TrackSearchFilters | `src/features/tracks/components/TrackSearchFilters.tsx` | 🟑 Medium | 1.5h | Default, Applied | | 5 | TrackListContainer | `src/features/tracks/components/TrackListContainer.tsx` | 🟑 Medium | 1.5h | Default | | 6 | TrackAnalyticsView | `src/components/tracks/TrackAnalyticsView.tsx` | πŸ”΄ High | 2.5h | Default, Loading, Empty | | 7 | SearchPage | `src/features/search/pages/SearchPage.tsx` | πŸ”΄ High | 3h | Default, Results, NoResults, Loading | | 8 | GlobalSearchBar | `src/components/search/GlobalSearchBar.tsx` | 🟑 Medium | 2h | Default, Focused, WithSuggestions | ### Checklist Sprint 5 - [ ] TrackDetailPage.stories.tsx - [ ] TrackSearch.stories.tsx - [ ] TrackSearchResults.stories.tsx - [ ] TrackSearchFilters.stories.tsx - [ ] TrackListContainer.stories.tsx - [ ] TrackAnalyticsView.stories.tsx - [ ] SearchPage.stories.tsx - [ ] GlobalSearchBar.stories.tsx **Couverture attendue**: 62% β†’ 67% --- ## πŸ“… SPRINT 6 - Upload & Library **Dates**: 10-16 Mars 2026 **PrioritΓ©**: 🟠 P1 (Haute) **Heures**: 22h **Objectif**: Workflow upload et bibliothΓ¨que ### Composants Γ  CrΓ©er | # | Composant | Chemin | Effort | Heures | Variants | |---|-----------|--------|--------|--------|----------| | 1 | UploadView | `src/components/views/UploadView.tsx` | πŸ”΄ High | 3h | Default, Uploading, Complete, Error | | 2 | UploadProgressBar | `src/components/upload/UploadProgressBar.tsx` | 🟒 Low | 1h | Default, Complete, Error | | 3 | FileUploadZone | `src/components/upload/FileUploadZone.tsx` | 🟑 Medium | 2h | Default, Dragging, Processing | | 4 | BulkUploadModal | `src/components/upload/BulkUploadModal.tsx` | πŸ”΄ High | 2.5h | Default, Uploading, Complete | | 5 | MetadataEditor | `src/components/upload/MetadataEditor.tsx` | πŸ”΄ High | 2.5h | Default, WithData, Saving | | 6 | MetadataForm | `src/components/upload/metadata/MetadataForm.tsx` | 🟑 Medium | 2h | Default, WithErrors | | 7 | CoverArtUploadModal | `src/components/upload/CoverArtUploadModal.tsx` | 🟑 Medium | 1.5h | Default, Uploading, Preview | | 8 | LibraryPage | `src/features/library/pages/LibraryPage.tsx` | πŸ”΄ High | 2.5h | Default, Empty, Loading | ### Checklist Sprint 6 - [ ] UploadView.stories.tsx - [ ] UploadProgressBar.stories.tsx - [ ] FileUploadZone.stories.tsx - [ ] BulkUploadModal.stories.tsx - [ ] MetadataEditor.stories.tsx - [ ] MetadataForm.stories.tsx - [ ] CoverArtUploadModal.stories.tsx - [ ] LibraryPage.stories.tsx **Couverture attendue**: 67% β†’ 72% --- ## πŸ“… SPRINT 7 - Chat & Social **Dates**: 17-23 Mars 2026 **PrioritΓ©**: 🟑 P2 (Moyenne) **Heures**: 18h **Objectif**: Features chat et social ### Composants Γ  CrΓ©er | # | Composant | Chemin | Effort | Heures | Variants | |---|-----------|--------|--------|--------|----------| | 1 | ChatPage | `src/features/chat/pages/ChatPage.tsx` | πŸ”΄ High | 3h | Default, Loading, Empty | | 2 | ChatView | `src/components/views/ChatView.tsx` | 🟑 Medium | 2h | Default | | 3 | CreateRoomDialog | `src/features/chat/components/CreateRoomDialog.tsx` | 🟑 Medium | 1.5h | Default, Creating | | 4 | MessageSearch | `src/features/chat/components/MessageSearch.tsx` | 🟑 Medium | 1.5h | Default, Results, NoResults | | 5 | VirtualizedChatMessages | `src/features/chat/components/VirtualizedChatMessages.tsx` | πŸ”΄ High | 2h | Default, Loading | | 6 | SocialView | `src/components/views/SocialView.tsx` | 🟑 Medium | 2h | Default | | 7 | ConnectionsView | `src/components/social/ConnectionsView.tsx` | 🟑 Medium | 1.5h | Default, Empty | | 8 | FeedView | `src/components/views/FeedView.tsx` | πŸ”΄ High | 2h | Default, Empty, Loading | | 9 | CreatePostModal | `src/components/social/CreatePostModal.tsx` | 🟑 Medium | 1.5h | Default, Posting | ### Checklist Sprint 7 - [ ] ChatPage.stories.tsx - [ ] ChatView.stories.tsx - [ ] CreateRoomDialog.stories.tsx - [ ] MessageSearch.stories.tsx - [ ] VirtualizedChatMessages.stories.tsx - [ ] SocialView.stories.tsx - [ ] ConnectionsView.stories.tsx - [ ] FeedView.stories.tsx - [ ] CreatePostModal.stories.tsx **Couverture attendue**: 72% β†’ 77% --- ## πŸ“… SPRINT 8 - Settings & Preferences **Dates**: 24-30 Mars 2026 **PrioritΓ©**: 🟑 P2 (Moyenne) **Heures**: 20h **Objectif**: Tous les panneaux de paramΓ¨tres ### Composants Γ  CrΓ©er | # | Composant | Chemin | Effort | Heures | Variants | |---|-----------|--------|--------|--------|----------| | 1 | SettingsPage | `src/features/settings/pages/SettingsPage.tsx` | 🟑 Medium | 2h | Default | | 2 | SettingsView | `src/components/views/SettingsView.tsx` | 🟑 Medium | 1.5h | Default | | 3 | SecuritySettings | `src/components/settings/SecuritySettings.tsx` | πŸ”΄ High | 2.5h | Default, Updating | | 4 | SessionManagement | `src/components/settings/SessionManagement.tsx` | 🟑 Medium | 2h | Default, WithSessions | | 5 | AppearanceSettingsView | `src/components/settings/AppearanceSettingsView.tsx` | 🟑 Medium | 1.5h | Default | | 6 | AccessibilitySettingsView | `src/components/views/AccessibilitySettingsView.tsx` | 🟑 Medium | 1.5h | Default | | 7 | ChangeEmailModal | `src/components/settings/ChangeEmailModal.tsx` | 🟑 Medium | 1.5h | Default, Sending, Sent | | 8 | ChangeUsernameModal | `src/components/settings/ChangeUsernameModal.tsx` | 🟑 Medium | 1.5h | Default, Checking, Available | | 9 | DeleteAccountView | `src/components/settings/DeleteAccountView.tsx` | 🟑 Medium | 1.5h | Default, Confirm | | 10 | DataExportView | `src/components/settings/DataExportView.tsx` | 🟑 Medium | 1.5h | Default, Exporting, Ready | ### Checklist Sprint 8 - [ ] SettingsPage.stories.tsx - [ ] SettingsView.stories.tsx - [ ] SecuritySettings.stories.tsx - [ ] SessionManagement.stories.tsx - [ ] AppearanceSettingsView.stories.tsx - [ ] AccessibilitySettingsView.stories.tsx - [ ] ChangeEmailModal.stories.tsx - [ ] ChangeUsernameModal.stories.tsx - [ ] DeleteAccountView.stories.tsx - [ ] DataExportView.stories.tsx **Couverture attendue**: 77% β†’ 82% --- ## πŸ“… SPRINT 9 - Marketplace & Commerce **Dates**: 31 Mars - 6 Avril 2026 **PrioritΓ©**: 🟑 P2 (Moyenne) **Heures**: 22h **Objectif**: Marketplace et commerce complet ### Composants Γ  CrΓ©er | # | Composant | Chemin | Effort | Heures | Variants | |---|-----------|--------|--------|--------|----------| | 1 | MarketplaceView | `src/components/views/MarketplaceView.tsx` | πŸ”΄ High | 2.5h | Default, Loading | | 2 | MarketplaceHome | `src/pages/marketplace/MarketplaceHome.tsx` | πŸ”΄ High | 2.5h | Default, Loading | | 3 | ProductDetailView | `src/components/marketplace/ProductDetailView.tsx` | πŸ”΄ High | 2.5h | Default, Loading, OutOfStock | | 4 | CartView | `src/components/views/CartView.tsx` | πŸ”΄ High | 2h | Default, Empty | | 5 | CartItem | `src/components/commerce/CartItem.tsx` | 🟒 Low | 1h | Default, Removing | | 6 | CheckoutView | `src/components/views/CheckoutView.tsx` | πŸ”΄ High | 3h | Default, Processing, Success | | 7 | OrderSummary | `src/components/commerce/OrderSummary.tsx` | 🟑 Medium | 1.5h | Default, WithDiscount | | 8 | LicenceCard | `src/components/commerce/LicenceCard.tsx` | 🟑 Medium | 1.5h | Basic, Pro, Exclusive | | 9 | PurchasesView | `src/components/views/PurchasesView.tsx` | 🟑 Medium | 2h | Default, Empty | ### Checklist Sprint 9 - [ ] MarketplaceView.stories.tsx - [ ] MarketplaceHome.stories.tsx - [ ] ProductDetailView.stories.tsx - [ ] CartView.stories.tsx - [ ] CartItem.stories.tsx - [ ] CheckoutView.stories.tsx - [ ] OrderSummary.stories.tsx - [ ] LicenceCard.stories.tsx - [ ] PurchasesView.stories.tsx **Couverture attendue**: 82% β†’ 87% --- ## πŸ“… SPRINT 10 - Views & Layouts **Dates**: 7-13 Avril 2026 **PrioritΓ©**: 🟑 P2 (Moyenne) **Heures**: 18h **Objectif**: Vues restantes ### Composants Γ  CrΓ©er | # | Composant | Chemin | Effort | Heures | Variants | |---|-----------|--------|--------|--------|----------| | 1 | DiscoverView | `src/components/views/DiscoverView.tsx` | πŸ”΄ High | 2.5h | Default, Loading | | 2 | ExploreView | `src/components/views/ExploreView.tsx` | πŸ”΄ High | 2.5h | Default | | 3 | ProfileView | `src/components/views/ProfileView.tsx` | πŸ”΄ High | 2.5h | Default, Loading | | 4 | UserProfilePage | `src/features/profile/pages/UserProfilePage.tsx` | πŸ”΄ High | 2.5h | Default, Own, NotFound | | 5 | NotificationsPage | `src/features/notifications/pages/NotificationsPage.tsx` | 🟑 Medium | 2h | Default, Empty | | 6 | NotificationsView | `src/components/views/NotificationsView.tsx` | 🟑 Medium | 1.5h | Default | | 7 | PlaylistsView | `src/components/views/PlaylistsView.tsx` | 🟑 Medium | 1.5h | Default | | 8 | AnalyticsView | `src/components/views/AnalyticsView.tsx` | πŸ”΄ High | 2h | Default, Loading | ### Checklist Sprint 10 - [ ] DiscoverView.stories.tsx - [ ] ExploreView.stories.tsx - [ ] ProfileView.stories.tsx - [ ] UserProfilePage.stories.tsx - [ ] NotificationsPage.stories.tsx - [ ] NotificationsView.stories.tsx - [ ] PlaylistsView.stories.tsx - [ ] AnalyticsView.stories.tsx **Couverture attendue**: 87% β†’ 92% --- ## πŸ“… SPRINT 11 - Studio & Education **Dates**: 14-20 Avril 2026 **PrioritΓ©**: 🟒 P3 (Basse) **Heures**: 20h **Objectif**: Studio et Γ©ducation ### Composants Γ  CrΓ©er | # | Composant | Chemin | Effort | Heures | Variants | |---|-----------|--------|--------|--------|----------| | 1 | StudioView | `src/components/views/StudioView.tsx` | πŸ”΄ High | 2.5h | Default | | 2 | ProjectDetailView | `src/components/studio/ProjectDetailView.tsx` | πŸ”΄ High | 2.5h | Default, Loading | | 3 | CreateProjectModal | `src/components/studio/CreateProjectModal.tsx` | 🟑 Medium | 1.5h | Default, Creating | | 4 | GoLiveView | `src/components/studio/GoLiveView.tsx` | πŸ”΄ High | 2.5h | Setup, Live, Ended | | 5 | LyricsEditorModal | `src/components/studio/LyricsEditorModal.tsx` | 🟑 Medium | 1.5h | Default, Syncing | | 6 | EducationView | `src/components/views/EducationView.tsx` | 🟑 Medium | 2h | Default | | 7 | CourseDetailView | `src/components/education/CourseDetailView.tsx` | πŸ”΄ High | 2h | Default, Enrolled | | 8 | CourseLearningView | `src/components/education/CourseLearningView.tsx` | πŸ”΄ High | 2.5h | Default, Complete | | 9 | LiveView | `src/components/views/LiveView.tsx` | 🟑 Medium | 2h | Default | ### Checklist Sprint 11 - [ ] StudioView.stories.tsx - [ ] ProjectDetailView.stories.tsx - [ ] CreateProjectModal.stories.tsx - [ ] GoLiveView.stories.tsx - [ ] LyricsEditorModal.stories.tsx - [ ] EducationView.stories.tsx - [ ] CourseDetailView.stories.tsx - [ ] CourseLearningView.stories.tsx - [ ] LiveView.stories.tsx **Couverture attendue**: 92% β†’ 96% --- ## πŸ“… SPRINT 12 - Sprint Final - 100% **Dates**: 21-27 Avril 2026 **PrioritΓ©**: 🟒 P3 (Basse) **Heures**: 25h **Objectif**: Tous les composants restants ### Composants Γ  CrΓ©er | # | Composant | Chemin | Effort | Heures | Variants | |---|-----------|--------|--------|--------|----------| | 1 | GearView | `src/components/views/GearView.tsx` | 🟑 Medium | 1.5h | Default | | 2 | EquipmentDetailView | `src/components/inventory/EquipmentDetailView.tsx` | 🟑 Medium | 1.5h | Default | | 3 | AchievementsView | `src/components/gamification/AchievementsView.tsx` | 🟑 Medium | 1.5h | Default, Empty | | 4 | AchievementCard | `src/components/gamification/AchievementCard.tsx` | 🟒 Low | 1h | Locked, Unlocked | | 5 | LeaderboardView | `src/components/gamification/LeaderboardView.tsx` | 🟑 Medium | 1.5h | Default | | 6 | XPBar | `src/components/gamification/XPBar.tsx` | 🟒 Low | 1h | Default, LevelUp | | 7 | DeveloperDashboardView | `src/components/developer/DeveloperDashboardView.tsx` | πŸ”΄ High | 2h | Default | | 8 | APIPlaygroundView | `src/components/developer/APIPlaygroundView.tsx` | πŸ”΄ High | 2.5h | Default | | 9 | CreateAPIKeyModal | `src/components/developer/CreateAPIKeyModal.tsx` | 🟑 Medium | 1.5h | Default, Created | | 10 | WebhooksView | `src/features/webhooks/WebhooksView.tsx` | πŸ”΄ High | 2h | Default, Empty | | 11 | MonitoringDashboard | `src/components/monitoring/MonitoringDashboard.tsx` | πŸ”΄ High | 2.5h | Default | | 12 | WishlistView | `src/components/views/WishlistView.tsx` | 🟑 Medium | 1.5h | Default, Empty | | 13 | FileManagerView | `src/components/views/FileManagerView.tsx` | πŸ”΄ High | 2h | Default | ### Checklist Sprint 12 - [ ] GearView.stories.tsx - [ ] EquipmentDetailView.stories.tsx - [ ] AchievementsView.stories.tsx - [ ] AchievementCard.stories.tsx - [ ] LeaderboardView.stories.tsx - [ ] XPBar.stories.tsx - [ ] DeveloperDashboardView.stories.tsx - [ ] APIPlaygroundView.stories.tsx - [ ] CreateAPIKeyModal.stories.tsx - [ ] WebhooksView.stories.tsx - [ ] MonitoringDashboard.stories.tsx - [ ] WishlistView.stories.tsx - [ ] FileManagerView.stories.tsx **Couverture attendue**: 96% β†’ 100% πŸŽ‰ --- ## πŸ“Š Tableau de Suivi Global | Semaine | Sprint | Stories AjoutΓ©es | Couverture | Status | |---------|--------|------------------|------------|--------| | 1 | Critical Pages | 11 | 47% | ⬜ Γ€ faire | | 2 | Dashboard & Admin | 9 | 52% | ⬜ Γ€ faire | | 3 | Player & Playback | 8 | 57% | ⬜ Γ€ faire | | 4 | Playlists Complete | 10 | 62% | ⬜ Γ€ faire | | 5 | Tracks & Search | 8 | 67% | ⬜ Γ€ faire | | 6 | Upload & Library | 8 | 72% | ⬜ Γ€ faire | | 7 | Chat & Social | 9 | 77% | ⬜ Γ€ faire | | 8 | Settings & Preferences | 10 | 82% | ⬜ Γ€ faire | | 9 | Marketplace & Commerce | 9 | 87% | ⬜ Γ€ faire | | 10 | Views & Layouts | 8 | 92% | ⬜ Γ€ faire | | 11 | Studio & Education | 9 | 96% | ⬜ Γ€ faire | | 12 | Final Sprint | 13 | 100% | ⬜ Γ€ faire | --- ## πŸ› οΈ Commandes Utiles ### VΓ©rifier la progression ```bash # Compter les stories actuelles find src -name "*.stories.tsx" | wc -l # VΓ©rifier la couverture ./scripts/storybook-coverage.sh # Lister les composants sans stories ./scripts/storybook-coverage.sh 2>/dev/null | grep "^ -" ``` ### GΓ©nΓ©rer une story ```bash # Script de gΓ©nΓ©ration automatique ./scripts/generate-story.sh src/components/views/UploadView.tsx ``` ### Build Storybook ```bash npm run storybook # DΓ©veloppement npm run build-storybook # Production ``` --- ## πŸ“ Notes - **Effort estimΓ©**: BasΓ© sur la complexitΓ© du composant et le nombre de variants - **PrioritΓ©**: P0 (Critique) β†’ P3 (Basse) - **Heures**: Incluent le temps de test et de revue - **Variants**: Nombre minimum recommandΓ© --- *Document gΓ©nΓ©rΓ© le 2 FΓ©vrier 2026* *Fichier JSON associΓ©: `storybook-roadmap.json`*