English version here
Um template de projeto Django para ajudar você a iniciar novos projetos. Baseado no 7ws logfreak.
Na era das aplicações web usando React/APIs RESTful, nós ainda acreditamos que um projeto Django "raiz" tem seu valor. Principalmente se você só precisa validar uma ideia, ou simplesmente prefere não usar aquelas ferramentas. Tendo isso em mente, nós criamos essa estrutura (vamos chamar de boilerplate) que vai servir de template para um novo projeto Django, adicionando algumas melhorias.
- Python +3.6
- Django 3.0.8
- Pytest - Vai nos ajudar a escrever testes (e rodá-los)
- Bower - Um gerenciador de pacotes para o frontend
- Poetry - Gerenciador de pacotes Python
- Bootstrap 4.5 - Um dos mais populares frameworks CSS
- pre-commit - Framework para rodar alguns hooks no momento do commit. Alguns dos hooks:
- mypy
- Configurar ambiente Docker para produção
- Finalizar configuração do Heroku
Primeiro, você vai precisar instalar o Django, para que assim possamos utilizar o comando django-admin. Então ative seu ambiente virtual e rode pip install Django==3.0.8. Ao finalizar a instalação, dentro do diretório onde você quer que o projeto fique, rode o seguinte comando:
django-admin startproject nome_do_projeto --template=https://github.com/dunderlabs/django-boilerplate/archive/main.zipApós o comando acima finalizar, você deverá fazer uma cópia do arquivo example.env mudando o nome da cópia para .env. Agora dentro dele, altere os valores das variáveis conforme necessário.
Depois disso, todos os arquivos desse repositório estarão dentro do diretório que você criou antes e executou o comando anterior. Agora nós precisamos instalar as dependências Python do projeto. Para isso, você pode executar esse comando abaixo:
$ make local-install-requirementsSe em algum momento você quiser atualizar os pacotes Python, execute o seguinte:
$ make local-update-requirementsAgora vamos instalar as dependências do frontend:
$ make local-setup-frontendPor fim, inicie o servidor:
$ python manage.py runserverPra rodar os testes vai ser tão simples quanto o seguinte:
$ make local-test-allPrimeiro certifique-se que tem Docker e Docker Compose instalados na sua máquina. Depois disso, como primeiro passo vamos fazer o build do projeto, aonde ele vai baixar as imagens docker e executar todos os comandos necessários. Para isso, execute o comando:
make docker-buildDepois disso para levantar os containeres e deixar o projeto rodando, basta executar:
make docker-upNós também criamos um atalho para evitar que você sempre tenha que digitar docker-compose run --rm backend quando precisar executar algum comando dentro do container. Então, caso você queira executar um python manage.py migrate dentro do container, você roda o seguinte:
./bin/run python manage.py migrateSe você rodar apenas ./bin/run ele vai executar o servidor de desenvolvimento do Django.
Reporte os bugs nas nossas issues ou simplesmente faça um fork do projeto, contribua com o que achar necessário e mande um PR pra gente! :)