Essa é a versão do usuario em que qualquer um pode ler as noticias.
-
Instalar MariaDB
-
Abrir mysql client do MariaDb
-
Criar database "db1"
create database db1;
- Instalar virtualenv
pip install virtualenv
- Criar ambiente do virtualenv
virtualenv myenv
- Ativar virtualenv
.\myenv\Scripts\activate
- Instalar dependencias
pip install -r requirements.txt
- Instalar separadamente Mariadb
mariadb==1.0.11
- Rodar app
python server.py
-
Documento de teste único
python -m unittest tests.CheckUserDataTest
-
Pasta toda de test
python -m unittest discover tests
- Utilizar linguagem de programação Python (versão 3.6 ou superior) no back end;
- Utilizar SQLAlchemy (1.2.19 ou superior) para persistência de dados;
- Utilizar Jinja 2 ou similar para geração de páginas dinâmicas (tipo template);
- Utilizar o microframework Flask para implantação do sistema web;
- Utilizar o Gunicorn ou o Waitress como servidor de implantação, em conjunto com o Flask;
- Utilizar o Virtualenv para isolamento de ambiente de desenvolvimento e obtenção de pacotes;
- Estruturar o sistema seguindo a arquitetura MVC e orientação a serviços.
- Sistema Gerenciador de Banco de Dados MariaDB.
- Utilizar o GitHub para gerenciar o código-fonte do projeto.
- Utilizar o GitHub Actions para exemplificar a integração contínua (CI) do sistema.
- Qualquer usuário pode visualizar as notícias associadas a um assunto ao acessar a interface correspondente (ex. um menu de navegação).
- Somente um usuário administrador (único) deve ser capaz de cadastrar, excluir ou alterar as notícias.
- O usuário administrador (único) deve acessar a interface administrativa somente após ter sido autenticado, não havendo uma rota diretamente acessível sem o procedimento de autenticação.
- Cada notícia deve possuir (no mínimo):
- Um assunto (ex. esporte, política, etc.)
- Um título
- Um conteúdo.
- Sua aplicação web deve conter um menu para navegação e, no mínimo, três interfaces distintas com o usuário, acessíveis a partir do menu.
- A aplicação que faz a leitura das notícias e mostra para o usuário deve fazê-lo a partir de requisições à API do serviço de acesso às notícias.
- A aplicação deve ser responsiva a ponto de não tornar a interface confusa quando acessada a partir de um dispositivo móvel.