O projeto é uma plataforma web e móvel para criação e análise de avaliações digitais. O sistema está sendo criado sob orientação dos professores Juliano Henrique Foleis e Marcos Silvano Almeida. O mesmo é composto por um painel de controle utilizado para criação de quizzes, bem como um aplicativo móvel gamificado para que os alunos possam acessá-los e respondê-los.
Além disso, o painel de controle também possui uma seção de análise das repostas com algumas opções de filtragem das informações. Tal filtragem visa dar mais opções de visualização dos dados, permitindo a extração de mais informações.
A plataforma web conta com um sistema de turmas tanto públicas quanto privadas. Isso para que o criador do quiz tenha um controle sobre as pessoas que o estão respondendo. Na aplicação móvel, é possível que o usuário se inscreva na turma e responda os quizzes que estão anexados nela.
Os estudantes, na aplicação móvel, possuem acesso a um sistema de ranqueamento. Este último oferece uma gamificação como forma de motivação para um maior empenho na reposta dos quizzes.
Outra funcionalidade existente na plataforma web é a criação de um banco de questões. Nele é possível que o usuário adicione sua questão criada a este banco, permitindo que ele as reutilize em outros quizzes.
- Login pelo Google @professores.
- Gerenciamento de Turmas.
- Gerenciamento de Quizzes.
- Banco de Questões Pessoal Disponíveis para Criação dos Quizzes.
- Busca Personalizada de Questões por Tags.
- Disponibilização de PIN para Quizzes/Turmas.
- Estatísticas dos Quizzes:
- Visualização por meio de Gráficos.
- Filtragem por Turmas:
- Turma Especifica.
- Geral.
- Filtragem dos Scores:
- Melhor Tentativa.
- Pior Tentativa.
- Primeira Tentativa.
- Login pelo Google.
- Busca Personalizada de Quizzes por Tags.
- Acesso a Turmas por meio do PIN.
- Busca de Quizzes por meio de PIN.
- Escolha de Nickname e Avatares.
- Marcação de Quiz como Favorito.
- Pesquisa de Turmas Públicas.
- Ranqueamento de Respostas dos Quizzes para Gamificação.
- Ranking por Turma.
- Ranking por Quiz.
- Ranking Geral.
- Realize a cópia do arquivo docker-compose-prod-only-api-example.yml
- Renomeie a cópia para docker-compose-prod-only-api.yml
- Altere as variáveis de ambiente presentes no arquivo
- Execute o arquivo setup.sh
- Informe o domínio do paínel de controle
- Informe o domínio da API
- Informe um e-mail válido
Esta aplicação utiliza o SGBD MySQL. É necessário apenas criar o banco, o Sequelize fará todo o resto.
$ mysql -u root -p
$ create database NOME_DO_BANCO;
APP_URL=http://URL_AQUI:PORTA
DB_HOST="HOST_MYSQL"
DB_PORT="PORTA_MYSQL"
DB_USER="USUARIO_MYSQL"
DB_PASS="SENHA_DO_BANCO"
DB_NAME="NOME_DO_BANCO"
DB_DIALECT="mysql"
SECRET="DIGITE_SECRET_AQUI"
EXPIRE_IN="DIAS_PARA_EXPIRAR_TOKEN"
REFRESH_EXPIRATION="MINUTOS_PARA_EXPIRAR_REFRESH_TOKEN"
TIMEZONE="DIGITE_TIMEZONE_AQUI"
LDAP_URL="URL_LDAP_AQUI"
LDAP_USERNAME="USUARIO_LDAP"
LDAP_PASSWORD="SENHA_LDAP"
NODE_ENV=development OU production
PORT=PORTA_USADA_PELO_BACKEND
cd backend
npm install
npx sequelize-cli db:migrate
npm run dev
REACT_APP_BASE_URL=URL_DA_API
cd frontend
npm install
npm run start
export const API_URL = 'URL_DA_API';
cd mobile
npm install
expo start
Encontrou algum problema ou possui alguma sugestão para a melhoria do projeto? Por favor, siga os seguintes passos:
- Pesquise se já existe alguma issue fechada ou aberta sobre o assunto na ferramenta de Issue Tracker.
- Caso não encontrar nenhuma issue sobre o assunto, por favor, crie uma issue sobre o bug ou sugestão.
- Inclua na issue as tags referentes ao assunto abordado:
- feature - Utilizada para indicar uma sugestão de melhoria para o projeto.
- bug - Discussão aberta para informar sobre um possivel bug presente na aplicação.
Primeiramente, gostaria de agradecer pelo interesse em contribuir para o crescimento deste projeto. Doravante, para realizar sua contribuição, você poderá abrir um pull request enviando suas alterações. Por favor, siga os seguintes passos:
- Crie um fork do projeto e clone seu fork:
$ git clone https://github.com/jhonatancunha/quizUTFPR.git
$ cd quizUTFPR
- Crie uma nova branch que conterá suas alterações:
$ git checkout -b <nome-descritivo-da-alteracao>
- Após realizar as alterações, faça um commit para seu repositório:
$ git commit -m "titulo do commit" -m "descrição das alterações"
$ git push origin <nome-da-branch>
- Abra um Pull Request para a branch development. O mesmo deverá com um título claro e uma descrição contendo todas as alterações feitas.
Jhonatan Cunha |
Jessé Pires |
Iago Carmona |