
Observação
Atualmente, estou tentando refatorar o projeto usando o Next.js e posso apoiar a Next.js Deployment Solutions em um futuro próximo. Para mais progresso, preste atenção à filial dev-next.
Um aplicativo de site que permite fazer exames com base em suas anotações de conhecimento. Deixe você realmente se lembrar do que aprendeu e escreveu?

Para os alunos, um dos melhores hábitos deve ser o autoteste regular - faça -o grudar: a ciência do aprendizado bem -sucedido
Quando estou aprendendo uma nova tecnologia, tenho o hábito de fazer anotações e anotar informações importantes. É um bom hábito, mas também tenho o mau hábito de não gostar de ler as anotações que escrevi (não tenho certeza se esse é o caso da maioria das pessoas?). Isso resulta em minhas anotações se tornando meros lembranças sem uso substancial. É por isso que escolho criar um aplicativo que solicite continuamente com perguntas para revisar o conteúdo da sua nota.
Importante
Recomendo a leitura das melhores práticas de documentação antes de enviar notas para otimizar seu documento.
git clone https://github.com/codeacme17/examor.git
cd examordocker compose upVerifique se o Docker está instalado em sua máquina local e as portas
51717,51818e52020estão disponíveis no seu host local
Abrir http://localhost:51818 no seu navegador para acessar o Examor. (Devido ao esquema de otimização para módulos, pode ser lento ao carregar o programa ou entrar em uma determinada página pela primeira vez)
Quando os usuários criam notas, eles podem fazer upload de documentos associados. O aplicativo gera um conjunto de perguntas desses documentos, com base em seu conteúdo. Essas perguntas serão apresentadas aos usuários no futuro.
Depois que os usuários recebem perguntas diárias, eles podem fornecer respostas. O GPT pontuará, validará e fornecerá as respostas corretas. A pontuação é determinada avaliando a correção das respostas e o documento vinculado (0 ~ 10 pontos). Essa pontuação influencia o processo subsequente de revisão de Ebbinghaus.
Implementei uma versão simplificada da memória de Ebbinghaus, atualmente consistindo em apenas 8 linhas de código. Planejo otimizar ainda mais essa função no futuro (v0.1).
Em relação à função real, uma vez que o GPT gera um teste, a pontuação é registrada e afeta a data de revisão futura. Pontuações mais altas resultam em intervalos mais longos até a próxima revisão.
Observação
Recomende usar o modelo GPT-4 para uma experiência estável.

As funções podem fornecer mais possibilidades de geração e avaliação de perguntas. Você pode definir funções na página de configuração. Para obter mais informações sobre várias funções, é recomendável consultar o manual de função.
Escolha o tipo de pergunta ao criar notas.

Ao praticar perguntas, você pode responder usando métodos diferentes. A imagem abaixo mostra um exemplo de uma pergunta de escolha única.

No banco de perguntas , acumulamos algumas perguntas de documentos de alta qualidade, incluindo documentos e livros excelentes de código aberto, como o vue-component padrão e vue-apis . Dentro deste módulo de recurso, você pode importar facilmente essas perguntas existentes em suas anotações. Além disso, o recebemos calorosamente a contribuir com mais documentos ou livros de alta qualidade para enriquecer nosso banco de perguntas! Para diretrizes detalhadas de contribuição, consulte contribuindo para o banco de perguntas.
Notes Management é um módulo para supervisionar todos os documentos enviados. Dentro deste módulo, você pode excluir ou adicionar novos arquivos às suas notas carregadas. Observe que a exclusão de todos os documentos sob uma nota limpará as perguntas associadas.
Random Question é um módulo que seleciona aleatoriamente uma pergunta do banco de perguntas existente. A implementação deste módulo permite esse recurso.
Note é um módulo virtual gerado em seu aplicativo para cada nota que você cria. Neste módulo, você pode responder a perguntas. O empurrão de perguntas é implementado de acordo com a curva de memória de Ebbinghaus. Você receberá três tipos de dados de perguntas:
Perguntas para a revisão de hoje: Como o nome sugere, esses dados referem -se a perguntas que precisam de revisão no dia atual para perguntas respondidas no passado.
Perguntas expiradas: essas são perguntas não concluídas no prazo de revisão exigido no mesmo dia, resultando na coleta desses dados.
Novas perguntas: Quando a contagem diária de perguntas definida pelo usuário não é atendida a partir dos dois conjuntos de dados acima, esse conjunto de dados suplementares é empurrado para o usuário.
Examine é um módulo central em que os usuários respondem a perguntas, permitindo que o GPT obtenha pontuação e valide respostas. O módulo compreende três componentes:
Resposta: Os usuários inserem suas respostas e o conteúdo do teste pode ser exibido após o envio.
Último registro: registra a resposta anterior do usuário para a pergunta e o resultado da detecção.
Conteúdo do documento: Este componente exibe o conteúdo real do documento carregado, servindo como base e resposta final para a pergunta.
Ao iniciar o projeto, o aplicativo verifica as atualizações. Se uma atualização for necessária, o usuário será notificado. Você pode seguir estas etapas a serem atualizadas:
Export suas anotações, perguntas ou itens de configuração como um backup através do botão Configuração de Exportar e Notas na página Configurações pessoais. Isso exportará um arquivo chamado examor-data.xlsx . Você pode visualizar o conteúdo do arquivo, mas não é recomendável modificar o conteúdo do arquivo

Puxe as mais recentes atualizações de código remoto para atualizar seu projeto local.
Exclua o contêiner do Docker existente e reconstrua o projeto com o comando docker compose up --build para incorporar as últimas alterações.
Quando a construção for bem-sucedida, navegue até a página Configurações pessoais, clique no botão Importar arquivo e reimportar os dados de backup para o projeto.
O processo de atualização atual é baseado no meu uso pessoal. Pode não ser a melhor maneira de atualizar. Se você tiver melhores métodos de atualização, sinta -se à vontade para fornecer assistência na seção de problemas ❤️
Como o projeto está em um estágio muito inicial, ainda existem muitos problemas e bugs no projeto. Se você encontrar um bug ou tiver uma idéia para um novo recurso, envie um problema ou solicitação de puxar. Veja mais em contribuir.
Licença AGPL-3.0 © 2023-Apresentante Leyoonfr