- Archiver 131 .md dans docs/archive/root-md/ - Archiver 22 .json dans docs/archive/root-json/ - Conserver 7 .md utiles (README, CONTRIBUTING, CHANGELOG, etc.) - Conserver package.json, package-lock.json, turbo.json - Ajouter README d'index dans chaque archive
24 KiB
📚 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
# 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
# Script de génération automatique
./scripts/generate-story.sh src/components/views/UploadView.tsx
Build Storybook
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