Aplicação web para registro de experiências pessoais durante a Copa do Mundo 2026
📋 Documentação • 🚀 Funcionalidades • 🛠️ Tecnologias •
O Diário Digital da Copa 2026 é uma aplicação web desenvolvida como projeto acadêmico no Instituto Federal, no contexto da disciplina de Análise de Projeto de Sistemas. A plataforma combina acompanhamento informativo com interação pessoal, permitindo que torcedores construam um registro único e personalizado de suas vivências durante a Copa do Mundo de 2026.
"Não é só futebol. É memória."
Cada jogo tem uma história e essa história merece ser contada por quem a viveu. O sistema funciona como um diário digital interativo, onde o usuário pode registrar opiniões, sentimentos, avaliações, imagens e localizações de onde assistiu a cada partida, tudo organizado em uma linha do tempo pessoal.
| Perfil | Descrição |
|---|---|
| Torcedor Engajado | Quer registrar emoções, avaliar jogos, comentar e acompanhar estatísticas da Copa com profundidade |
| Usuário Casual | Busca acessar rapidamente resultados e informações sem interações complexas |
| ID | Funcionalidade | Descrição |
|---|---|---|
| RF01 | Criar Conta | Cadastro com nome, e-mail e senha, com validação de formato e segurança |
| RF02 | Alterar Senha | Atualização segura da senha com validação da senha atual |
| RF03 | Efetuar Login | Autenticação por e-mail e senha com início de sessão |
| RF04 | Efetuar Logout | Encerramento seguro da sessão com invalidação de token |
| ID | Funcionalidade | Descrição |
|---|---|---|
| RF05 | Registrar Experiência | Publicação de texto no feed privado do usuário sobre um jogo |
| RF06 | Adicionar Nota | Avaliação numérica do jogo (escala de 0 a 5, com incremento de 0.5) |
| RF07 | Marcar como Assistido | Sinalização de partidas já vistas, com histórico de visualização |
| RF08 | Adicionar Sentimento | Registro emocional da partida (felicidade, frustração, entusiasmo etc.) |
| RF09 | Adicionar Imagem | Upload de imagens vinculadas à experiência registrada |
| RF10 | Adicionar Comentário | Texto livre associado a um jogo específico |
| RF11 | Adicionar Localização | Registro do local onde o jogo foi assistido (nome, endereço ou GPS) |
| ID | Funcionalidade | Descrição |
|---|---|---|
| RF12 | Consultar Linha do Tempo | Feed cronológico privado com filtros por data, seleção e jogo |
| RF14 | Criar Lista de Jogos | Organização personalizada de partidas em listas nomeadas |
| RF15 | Adicionar Favorito | Marcação de jogos favoritos com acesso rápido em aba dedicada |
┌─────────────────────────────────────────────────────────────┐
│ ATRIBUTOS DE QUALIDADE │
├──────────────────┬──────────────────────────────────────────┤
│ Usabilidade │ Interface intuitiva, sem necessidade de │
│ │ treinamento prévio │
├──────────────────┼──────────────────────────────────────────┤
│ Desempenho │ Operações principais em até 3 segundos │
├──────────────────┼──────────────────────────────────────────┤
│ Segurança │ Senhas criptografadas, acesso autenticado│
├──────────────────┼──────────────────────────────────────────┤
│ Disponibilidade│ Uptime contínuo, especialmente durante │
│ │ o período da Copa │
├──────────────────┼──────────────────────────────────────────┤
│ Compatibilidade│ Chrome, Edge e navegadores modernos │
├──────────────────┼──────────────────────────────────────────┤
│ Integridade │ Dados corretos, sem duplicidade ou │
│ │ inconsistências │
├──────────────────┼──────────────────────────────────────────┤
│ Confiabilidade │ Baixa taxa de falhas, erros comunicados │
│ │ claramente ao usuário │
├──────────────────┼──────────────────────────────────────────┤
│ Manutenibilidade│ Código estruturado seguindo boas práticas│
└──────────────────┴──────────────────────────────────────────┘
⚠️ Esta seção será atualizada posteriormente
# Frontend
HTML, CSS and JAVASCRIPT
# Backend
C#, Docker
# Banco de Dados
MySQL
# Autenticação
JSON WEB TOKEN
MyCupSystem/
│
├── 📁 docs/
│ ├── requisitos.pdf
│ └── 📁 diagramas/
│
├── 📁 DiarioCopaFront/
├── index.html
├── login.html
├── home.html
│
├── 📁 css/
│ ├── auth.css
│ ├── home.css
│ └── landing.css
│
├── 📁 js/
│ ├── api.js
│ ├── auth.js
│ └── home.js
│
├── 📁 DiarioCopaApi/
│
├── 📁 Controllers/
│ └── UsuariosController.cs
│
├── 📁 DTOs/
│ ├── AlterarSenhaDto.cs
│ ├── CriarContaDto.cs
│ └── EfetuarLoginDto.cs
│
├── 📁 Data/
│ └── DiarioCopaContext.cs
│
├── 📁 Migrations/
│ ├── 20260501001740_InitialCreate.cs
│ ├── 20260501001740_InitialCreate.Designer.cs
│ └── DiarioCopaContextModelSnapshot.cs
│
├── 📁 Models/
│ ├── 📁 Enums/
│ │ ├── Nota.cs
│ │ └── Sentimento.cs
│ ├── Experiencia.cs
│ ├── Jogo.cs
│ ├── JogoFavorito.cs
│ ├── ListaJogos.cs
│ └── Usuario.cs
│
├── 📁 Properties/
│ └── launchSettings.json
│
├── 📁 Services/
│ └── TokenService.cs
│
├── Dockerfile
├── Program.cs
├── appsettings.json
├── DiarioCopaApi.csproj
└── DiarioCopaApi.http
⚠️ As instruções completas de instalação e execução serão adicionadas ao longo do desenvolvimento.
# 1. Clone o repositório
git clone https://github.com/seu-usuario/diario-digital-copa-2026.git
# 2. Acesse a pasta do projeto
cd diario-digital-copa-2026
# 3. Configure as variáveis de ambiente
cp .env.example .env
# 4. Siga as instruções específicas de cada módulo (frontend/backend)
| Documento | Descrição | Status |
|---|---|---|
| Documento de Requisitos | Requisitos funcionais (RF01–RF15) e não funcionais (RNF01–RNF08) | ✅ Concluído |
| Diagramas UML | Casos de uso, classes, sequência, estados e atividades | ✅ Concluído |
| Protótipos | Wireframes e mockups das telas | ✅ Concluído |
| Ana Carla Vidal | Gabriel Dourado | José Guilherme | Iarley Freitas | Letícia Sousa |
Bacharelado em Ciências da Computação
- Documento de Requisitos Funcionais e Não Funcionais
- Diagramas UML (Casos de Uso, Classes, Sequência)
- Protótipos / Wireframes
- Configuração do ambiente de desenvolvimento
- Implementação do módulo de autenticação (RF01–RF04)
- Implementação das funcionalidades de experiência (RF05–RF11)
- Implementação das funcionalidades de consulta (RF12–RF15)
- Testes e validação
- Deploy
Este projeto é desenvolvido para fins acadêmicos no IFCE - Campus Aracati.
Distribuído sob a licença MIT. Veja LICENSE para mais informações.