Este projeto é uma solução de um site de notícias para o portal Brasil Times, permitindo que editores e administradores gerenciem notícias. O projeto é dividido entre backend e frontend, cada um com suas tecnologias e processos de instalação descritos abaixo.
- 🐍 Linguagem: Python
- 🌐 Framework: Django
- 🗄️ Banco de Dados: SQLite (para desenvolvimento local)
- ⚛️ Linguagem: JavaScript
- 📚 Framework: Next.JS
- 🎨 Extras: Mantine, Tailwind
- 🐍 Python 3.8+
- ⚛️ Node.js e npm/yarn
Primeiro, clone o repositório e navegue até o diretório do projeto:
git clone [email protected]:amanda-diniz/brasil-times.git
cd brasil-times
-
Crie e ative um ambiente virtual:
python -m venv venv source venv/bin/activate # Para Linux/macOS venv\Scripts\activate # Para Windows
-
Instale as dependências:
pip install -r requirements.txt
-
Execute o servidor:
python manage.py runserver
O backend estará rodando em
http://localhost:8000
.
Para facilitar o processo de teste e avaliação do projeto, incluí o arquivo do banco de dados SQLite (db.sqlite3
) diretamente no repositório. Dessa forma, o projeto já vem populado com dados de exemplo e não é necessário recriar ou repopular o banco de dados ao executar localmente.
💡 Observação: Estou ciente de que, em um ambiente de produção ou em projetos reais, não é uma prática recomendada versionar arquivos de banco de dados ou incluir dados sensíveis no repositório. Normalmente, o arquivo db.sqlite3
seria adicionado ao .gitignore
para evitar seu versionamento. Porém, para os fins deste case e para agilizar o processo de avaliação, optei por disponibilizá-lo.
Se preferirem, podem excluir o arquivo db.sqlite3
e executar as migrações novamente com python manage.py migrate
, mas será necessário criar os dados manualmente.
-
Acesse o diretório do frontend:
cd frontend
-
Instale as dependências:
npm install # ou yarn install
-
Execute o frontend:
npm run dev # ou yarn dev
O frontend estará rodando em
http://localhost:3000
.
Para acessar o painel administrativo, utilize o endereço abaixo:
- URL: http://localhost:8000/admin
- Usuário:
admin
oueditor
- Senha:
123456
Durante o desenvolvimento deste projeto, foram utilizadas as seguintes referências de aprendizado:
- Django Girls Tutorial - Tutorial que usei como base.
- Django Documentation - Documentação oficial do Django.
- Django REST Framework - Documentação oficial para construção de APIs com Django.
- Mantine UI - Biblioteca de componentes para React, utilizada para estilização e design do frontend.
- Next.js - Documentação oficial do framework para React.