
Note
J'essaie actuellement de refacter le projet en utilisant Next.js, et je peux prendre en charge les solutions de déploiement NEXT.JS dans un avenir proche. Pour plus de progrès, veuillez prêter attention à la succursale Dev-Next.
Une application de site Web qui vous permet de passer des examens en fonction de vos notes de connaissances. Vous vous souvenez vraiment de ce que vous avez appris et écrit ?.

Pour les apprenants, l'une des meilleures habitudes devrait être une auto-test régulière - faites-le coller: la science de l'apprentissage réussi
Lorsque j'apprends une nouvelle technologie, j'ai l'habitude de prendre des notes et de noter des informations importantes. C'est une bonne habitude, mais j'ai aussi la mauvaise habitude de ne pas apprécier de lire les notes que j'ai écrites (je ne sais pas si c'est le cas pour la plupart des gens?). Il en résulte que mes notes deviennent de simples souvenirs sans usage substantiel. C'est pourquoi je choisis de créer une application qui vous invite en permanence avec des questions pour examiner votre contenu de note.
Important
Je recommande vivement de lire les meilleures pratiques de documentation avant de télécharger des notes pour optimiser votre document.
git clone https://github.com/codeacme17/examor.git
cd examordocker compose upVeuillez vous assurer que Docker est installé sur votre machine locale, et les ports
51717,51818et52020sont disponibles sur votre hôte local
Ouvrez http://localhost:51818 dans votre navigateur pour accéder à l'examen. (En raison du schéma d'optimisation des modules, il peut être lent lors du chargement du programme ou de la saisie d'une certaine page pour la première fois)
Lorsque les utilisateurs créent des notes, ils peuvent télécharger des documents associés. L'application génère un ensemble de questions à partir de ces documents, en fonction de leur contenu. Ces questions seront présentées aux utilisateurs à l'avenir. Lors de la création de notes, les utilisateurs peuvent choisir les types de questions qu'ils souhaitent générer, leur offrant une expérience d'apprentissage plus riche.
Une fois que les utilisateurs ont reçu des questions quotidiennes, ils peuvent fournir des réponses. GPT marquera, validera et fournira les bonnes réponses. Le score est déterminé en évaluant l'exactitude des réponses et le document lié (0 ~ 10 points). Ce score influence le processus d'examen Ebbinghaus ultérieur.
J'ai implémenté une version simplifiée de la mémoire Ebbinghaus, composée actuellement de seulement 8 lignes de code. Je prévois d'optimiser cette fonction plus loin à l'avenir (V0.1).
En ce qui concerne la fonction réelle, une fois que GPT génère un test, le score est enregistré et affecte la date de révision future. Des scores plus élevés entraînent des intervalles plus longs jusqu'à la prochaine revue.
Note
Recommandez d'utiliser le modèle GPT-4 pour une expérience stable.

Les rôles peuvent fournir plus de possibilités pour la génération de questions et l'évaluation. Vous pouvez définir des rôles dans la page de configuration. Pour plus d'informations sur divers rôles, il est recommandé de se référer au manuel de rôle.
Choisissez le type de question lors de la création de notes.

Lorsque vous pratiquant des questions, vous pouvez répondre en utilisant différentes méthodes. L'image ci-dessous montre un exemple de question à choix unique.

Dans la banque de questions , nous avons accumulé des questions de documents de haute qualité, y compris des documents open source exceptionnels et des livres comme le vue-component par défaut et vue-apis . Dans ce module de fonctionnalité, vous pouvez facilement importer ces questions existantes dans vos notes. De plus, nous vous invitons chaleureusement à apporter des documents ou des livres de haute qualité pour enrichir notre banque de questions! Pour des directives de contribution détaillées, veuillez consulter la contribution à la banque de questions.
Notes Management est un module pour superviser tous les documents téléchargés. Dans ce module, vous pouvez supprimer ou ajouter de nouveaux fichiers à vos notes téléchargées. Notez que la suppression de tous les documents dans une note effacera les questions associées.
Random Question est un module qui sélectionne au hasard une question de la banque de questions existante. L'implémentation de ce module permet cette fonctionnalité.
Note est un module virtuel généré dans votre application pour chaque note que vous créez. Dans ce module, vous pouvez répondre aux questions. La poussée de questions est mise en œuvre en fonction de la courbe de mémoire Ebbinghaus. Vous recevrez trois types de données de questions:
Questions pour la revue d'aujourd'hui: Comme son nom l'indique, ces données concernent les questions qui nécessitent un examen le jour en cours pour les questions répondues dans le passé.
Questions expirées: Ce sont des questions non complétées dans le délai de révision requise le même jour, ce qui a permis de collecter ces données.
Nouvelles questions: Lorsque le nombre de questions quotidiennes défini par l'utilisateur n'est pas rempli à partir des deux ensembles de données ci-dessus, cet ensemble de données supplémentaire est poussé à l'utilisateur.
Examine est un module central où les utilisateurs répondent aux questions, permettant à GPT de marquer et de valider les réponses. Le module comprend trois composants:
Réponse: Les utilisateurs saisissent leurs réponses et le contenu de test peut être affiché après la soumission.
Dernier enregistrement: enregistre la réponse précédente de l'utilisateur à la question et au résultat de la détection.
Contenu du document: ce composant affiche le contenu du document téléchargé réel, servant de base et de réponse finale pour la question.
Lors du démarrage du projet, l'application vérifie les mises à jour. Si une mise à jour est requise, l'utilisateur sera informé. Vous pouvez suivre ces étapes à mettre à jour:
Exportez vos notes, questions ou éléments de configuration en tant que sauvegarde via le bouton Configuration et notes d'exportation sur la page Paramètres personnels. Cela exportera un fichier nommé examor-data.xlsx . Vous pouvez afficher le contenu du fichier, mais il n'est pas recommandé de modifier le contenu du fichier

Tirez les dernières mises à jour de code distantes pour actualiser votre projet local.
Supprimez le conteneur Docker existant et reconstruisez le projet avec la commande docker compose up --build pour incorporer les dernières modifications.
Une fois la version réussie, accédez à la page des paramètres personnels, cliquez sur le bouton Importer le fichier et réimpliquez les données sauvegardées dans le projet.
Le processus de mise à jour actuel est basé sur mon utilisation personnelle. Ce n'est peut-être pas le meilleur moyen de mettre à jour. Si vous avez de meilleures méthodes de mise à jour, n'hésitez pas à fournir une assistance dans la section des problèmes ❤️
Étant donné que le projet est à un stade très précoce, il y a encore de nombreux problèmes et bugs dans le projet. Si vous trouvez un bogue ou avez une idée pour une nouvelle fonctionnalité, veuillez soumettre un problème ou une demande de traction. Voir plus en contribuant.
Licence AGPL-3.0 © 2023-présent Leyoonafr