db = db.getSiblingDB('flashcards') db.cards.createIndex({ theme: 1 }) db.cards.insertMany([ { c_id: '10000000-0000-4000-8000-000000000001', question: "Qu'est-ce qu'une closure en JavaScript ?", response: "Une fonction qui conserve l'accès à la portée de sa définition.", theme: 'javascript', tags: ['scope', 'fonction'], createdAt: new Date(), updatedAt: new Date(), }, { c_id: '10000000-0000-4000-8000-000000000002', question: 'Que retourne typeof null ?', response: 'La chaîne "object", héritage historique du langage.', theme: 'javascript', tags: ['types'], createdAt: new Date(), updatedAt: new Date(), }, { c_id: '10000000-0000-4000-8000-000000000003', question: "Qu'est-ce qu'une interface TypeScript ?", response: "Un contrat décrivant la forme d'un objet.", theme: 'typescript', tags: ['types'], createdAt: new Date(), updatedAt: new Date(), }, { c_id: '10000000-0000-4000-8000-000000000004', question: 'À quoi sert le type unknown ?', response: "Il représente une valeur inconnue qui exige un contrôle de type avant usage.", theme: 'typescript', tags: ['types'], createdAt: new Date(), updatedAt: new Date(), }, { c_id: '10000000-0000-4000-8000-000000000005', question: "Qu'est-ce qu'un hook React ?", response: "Une fonction qui permet de brancher l'état et le cycle de vie dans un composant fonctionnel.", theme: 'react', tags: ['hooks', 'composants'], createdAt: new Date(), updatedAt: new Date(), }, { c_id: '10000000-0000-4000-8000-000000000006', question: 'À quoi sert useState ?', response: "Il déclare une variable d'état locale et sa fonction de mise à jour.", theme: 'react', tags: ['hooks', 'état'], createdAt: new Date(), updatedAt: new Date(), }, { c_id: '10000000-0000-4000-8000-000000000007', question: 'Que fait git rebase ?', response: "Il réapplique les commits d'une branche sur une autre base.", theme: 'git', tags: ['branches'], createdAt: new Date(), updatedAt: new Date(), }, { c_id: '10000000-0000-4000-8000-000000000008', question: 'Différence entre merge et rebase ?', response: "merge crée un commit de fusion, rebase réécrit l'historique de façon linéaire.", theme: 'git', tags: ['branches'], createdAt: new Date(), updatedAt: new Date(), }, { c_id: '10000000-0000-4000-8000-000000000009', question: "Qu'est-ce qu'un volume Docker ?", response: "Un stockage persistant indépendant du cycle de vie du conteneur.", theme: 'docker', tags: ['stockage'], createdAt: new Date(), updatedAt: new Date(), }, { c_id: '10000000-0000-4000-8000-000000000010', question: 'Différence entre RUN et CMD dans un Dockerfile ?', response: "RUN s'exécute au build, CMD définit la commande lancée au démarrage du conteneur.", theme: 'docker', tags: ['dockerfile'], createdAt: new Date(), updatedAt: new Date(), }, ])