https://github.com/moscarde/django-todo
Aplicação simples de Todo List desenvolvida com Django para estudo de conceitos fundamentais e boas práticas, incluindo criação, listagem, edição, exclusão e marcação de tarefas como completas.
https://github.com/moscarde/django-todo
bootstrap5 crispy-forms crud fat-model-skinny-view
Last synced: 30 days ago
JSON representation
Aplicação simples de Todo List desenvolvida com Django para estudo de conceitos fundamentais e boas práticas, incluindo criação, listagem, edição, exclusão e marcação de tarefas como completas.
- Host: GitHub
- URL: https://github.com/moscarde/django-todo
- Owner: Moscarde
- Created: 2025-01-10T17:03:40.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-11T20:22:40.000Z (over 1 year ago)
- Last Synced: 2025-02-06T04:52:57.858Z (over 1 year ago)
- Topics: bootstrap5, crispy-forms, crud, fat-model-skinny-view
- Language: Python
- Homepage:
- Size: 97.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Django Todo List
Este é um projeto simples de **Todo List** desenvolvido como parte de um estudo de **Django**, explorando conceitos básicos e boas práticas no desenvolvimento de aplicações web. O objetivo principal é aprender e aplicar funcionalidades essenciais do framework Django, como modelos, views, templates e o uso de bibliotecas externas para melhorar a experiência do desenvolvimento.
## Screenshots



## Funcionalidades Implementadas
- **Criação de Tarefas:** Página para adicionar novas tarefas com formulários estilizados usando **Crispy Forms**.
- **Listagem de Tarefas:** Exibição de tarefas utilizando **Class-Based Views (CBVs)**.
- **Edição e Exclusão:** Tarefas podem ser atualizadas ou removidas diretamente na interface.
- **Finalização de Tarefas:** Utilizando o padrão **Fat Model Skinny View** para lógica de negócios.
- **Gerenciamento de Variáveis de Ambiente:** Uso das bibliotecas `python-decouple` e `dj-database-url` para facilitar o manuseio de configurações sensíveis.
- **Estilização:** Integração com **Crispy Forms** e **Bootstrap 5** para criar formulários e layouts responsivos.
- **Template Inheritance:** Uso de herança de templates para criar uma interface consistente.
## Tecnologias Utilizadas
- **Django:** Framework principal para desenvolvimento web.
- **Crispy Forms + Bootstrap 5:** Para estilização de formulários e templates.
- **Python Decouple e dj-database-url:** Para gerenciar variáveis de ambiente e configurações do banco de dados.
- **SQLite:** Banco de dados padrão para prototipagem.
- **HTML Template Inheritance:** Para reutilização de código nos templates.
## Estrutura do Projeto
O projeto segue uma organização típica do Django. Algumas pastas e arquivos relevantes incluem:
- **`todos/`**: Aplicação principal contendo modelos, views e templates.
- **`requirements.txt`**: Lista de dependências do projeto.
- **`.vscode/settings.json`**: Configurações adicionais para o VSCode.(Optei por incluir nesse repositório como documentação)
- **`manage.py`**: Ponto de entrada para comandos do Django.
## Como Rodar o Projeto
1. Clone o repositório:
```bash
git clone https://github.com/Moscarde/django-todo.git
cd django-todo
```
2. Crie e ative um ambiente virtual:
```bash
python -m venv venv
source venv/bin/activate
# No Windows: venv\Scripts\activate
```
3. Instale as dependências:
```bash
pip install -r requirements.txt
```
4. Configure as variáveis de ambiente no arquivo `.env` (use `.env.example` como referência).
5. Aplique as migrações:
```bash
pip install -r requirements.txt
```
6. Inicie o servidor de desenvolvimento:
```bash
python manage.py runserver
```
7. Acesse o projeto no navegador: http://localhost:8000.
## Referências
Utilizei como referência o vídeo de guia para Django do canal **TreinaWeb** disponibilizado no [Youtube](https://www.youtube.com/watch?v=MsUL3Pgofl4) juntamente com a [Documentação oficial do Django](https://docs.djangoproject.com/pt-br/5.1/intro/tutorial01/)