

Comunicado [IMPORTANTE]
Infelizmente, o projeto foi descontinuado e não foi concluído, o que significa que não é possível realizar uma simulação completa do mesmo. Agradecemos a todos os envolvidos pelo tempo dedicado. É importante ressaltar que a ideia principal do projeto era aprender um pouco mais sobre Go, e que, se tivesse sido concluído, teria sido útil para os alunos do curso de Ciência da Computação da UnB, especialmente na disciplina de APC (Algoritmos e Programação de Computadores).
Visão Geral
DragonT é uma plataforma que centraliza o acesso à materiais do curso. Fornece relatórios automáticos do progresso de cada aluno individualmente e da turma como um todo.
Objetivo
O objetivo desse software será para facilitar o trabalho do professor no acompanhamento de cada aluno, tendo relatório automático do progresso da turma, e também permitindo que você tenha uma noção do desenvolvimento da turma, pra ver se aquele aluno merece o famoso 0,1 no final do semestre. Também irá servir o conteúdo teórico que atualmente está neste link.
Features
-
Login individual para o aluno
-
Dashboard com progresso da turma e métricas do curso
-
Relatório individual de progresso do aluno
-
Integração com Code Forces (Uri para os exercícios extras)
-
Relatórios por semestre
-
Possível fórum de discussão alunos - monitores para cada assunto da matéria (talvez)
Tente você mesmo
Deploy Mode
Na raiz do projeto, execute os seguintes comandos para executar o projeto no modo de produção
docker-compose up --build
Developer Mode
Na raiz do projeto, execute os seguintes comandos para executar o projeto no modo desenvolvedor
- Subir as aplicações que o DraGonT precisa
docker-compose up -d local
- Compile a versão local
go build
- Servindo o DraGonT localmente
./apc-api serve --port 8080 \
--mongo-host localhost \
--mongo-port 27017 \
--jwt-key SUPER_SECRET \
--codeforces-key f3d968eea83ad8d5f21cad0365edcc200439c6f0 \
--codeforces-secret b30c206b689d5ba004534c6780aa7be8e234a7f3 \
--log-level debug
Product backlog
-
Modelagem do banco
-
Login e senha
-
Integração com Online Judges
-
Dash board individual
-
Processar dados do PJudge
-
Análise de dados para gerar dash boards
-
Dash board da turma
Planejamento
Semana 1~2 ( 1 ~ 15 abril)
Semana 3~4 ( 15 ~ 29 abril)
Semana 5~6 (29 abril ~ 13 maio)
Semana 7 (13 ~ 20 maio)
- Migrar as aulas que estão no GitHub
Semana 8~9 (20 ~ 3 de junho)
Semana 10 (3 ~ 10 junho)
Neste ponto já temos um sistema funcional para os alunos
Semana 11 (10 ~ 17 junho)
Semana 12~13 (17 junho ~ 1 julho)
-
Depoly do projeto
-
Testes Beta
Fim do primeiro semestre
Semana 1 (19 agosto ~ 26 agosto)
Semana 2 (26 agosto ~ 2 setembro)
Semana 3~5 (2 ~ 23 setembro)
-
Implementação envio de provas, trabalhos e exercícios extras (Exercícios de arquivos)
-
Deploy aplicação para acompanhamento
Semana 6 (23 setembro ~ 30 setembro)
Semana 7~8 (30 setembro ~ 7 outubro)
- Integração das aulas práticas
Semana 8 (7 outubro ~ 14 outubro)
- Analise e estruturação dos dados da turma
Semana 9~11 (14 outubro ~ 4 novembro)
- Implementação das analises dos dados e do dashboard
Semana 12 (4 novembro ~ 11 novembro)
- Analise da estrutura do relatório automático
Semana 13~15 (11 novembro ~ 2 dezembro)
- Implementando geração de relatório automático
Semana 16 (2 dezembro ~ 9 dezembro)
Versão 100% funcional
.
.
possível dilatação do tempo de projeto + novas ideias
MIT License
Copyright (c) 2019 DraGonT
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.