DKCutter Django

DKCutter Django é um framework para iniciar rapidamente projetos Django prontos para produção.

Build Status Licença MIT Estilo de código: Ruff

Desenvolvido por DKCutter, o DKCutter Django é um framework para iniciar rapidamente projetos Django prontos para produção.

  • Se você tiver problemas com o DKCutter Django, abra issues.

Uso

[!NOTE]

O Docker é recomendado para configurar seu projeto. Como alternativa, certifique-se de ter a versão mais recente do uv instalada. Se você escolher um pipeline de frontend ou React Email, também precisará de um gerenciador de pacotes Node.js (npm, pnpm, yarn ou bun).

Para estruturar um aplicativo usando o dkcutter, execute qualquer um dos quatro comandos a seguir e responda às perguntas do prompt de comando:

npm

npx dkcutter@latest gh:ncontiero/dkcutter-django

yarn

yarn dlx dkcutter@latest gh:ncontiero/dkcutter-django

pnpm

pnpm dlx dkcutter@latest gh:ncontiero/dkcutter-django

bun

bunx dkcutter@latest gh:ncontiero/dkcutter-django

Você será solicitado a fornecer alguns valores. Forneça-os e um projeto Django será criado para você.

Aviso: Após este ponto, altere 'Nicolas Contiero', etc. para suas próprias informações.

Responda aos prompts com suas próprias opções desejadas. Por exemplo:

# output

Entre no projeto e dê uma olhada:

cd my-awesome-project/
ls

Uso avançado

Se você quiser começar mais rápido, pode usar as seguintes opções:

FlagDescrição
--projectName <string>O nome legível do seu projeto.
--projectSlug <string>O slug do seu projeto sem traços ou espaços.
--description <string>Descreve seu projeto.
--authorName <string>O nome do autor.
--domainName <string>O nome de domínio que você planeja usar para seu projeto quando ele for lançado.
--email <string>O endereço de e-mail que você deseja identificar no projeto.
--postgresqlVersion <string>Selecione uma versão do PostgreSQL para usar.
--cloudProvider <string>Selecione um provedor de nuvem para arquivos estáticos e de mídia.
--restFramework <string>Selecione um framework de API REST.
--mailService <string>Selecione um serviço de e-mail que o Django-Anymail fornece.
--frontendPipeline <string>Selecione um pipeline para compilar e otimizar ativos de frontend (JS, CSS, …).
--frontendPipelineLang <string>Selecione o idioma usado pelo Pipeline de Frontend.
--additionalTools <string>Selecione ferramentas adicionais para usar.
--useTailwindInReactEmail <boolean>Selecione se deseja usar o TailwindCSS no React Email.
--pkgManagerToUse <string>Selecione o gerenciador de pacotes para o Pipeline de Frontend.
--automatedDepsUpdater <string>Escolha o Atualizador de Dependências Automatizado. Veja para mais informações.
--installFrontendDeps <boolean>Instalar dependências de Frontend.

Veja mais informações sobre as opções.

Exemplo

A seguir, a estrutura de um aplicativo com o Sentry:

pnpm dlx dkcutter gh:ncontiero/dkcutter-django --additionalTools sentry

Se você quiser usar todos os valores padrão, com exceção de um ou mais, pode fazer da seguinte forma:

pnpm dlx dkcutter gh:ncontiero/dkcutter-django --additionalTools celery,sentry -y

Isso usará os valores padrão, exceto para --additionalTools.

Para desenvolvimento local, veja o seguinte

Referências e inspirações

  • Cookiecutter Django - Um framework para iniciar rapidamente projetos Django prontos para produção.

Licença

Este projeto está licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter detalhes