/DataProjectStarterKit

Estrutura completa para iniciar um projeto de dados com Python, abrangendo ambiente, git, desenvolvimento, testes e documentação.

Primary LanguagePython

Data Project Starter Kit

Sobre o Projeto

Este repositório é uma parte integrante do workshop "Como estruturar um projeto de dados do Zero". O intuito aqui é fornecer uma base e uma estrutura padronizada para iniciar projetos de engenharia, ciência e análise de dados. O foco principal é em boas práticas, automação, testes e documentação.

Objetivos do Workshop:

  • Entender a estrutura padrão de projetos: Isso inclui a organização de diretórios, como o código-fonte, testes, documentação, entre outros.

  • Estruturas padrões em projetos de dados: Vamos refatorar o projeto utilizando classes, módulos e boas práticas em uma ETL.

  • Familiarizar-se com ferramentas de desenvolvimento: Abordaremos o uso de ambientes virtuais e discutiremos ferramentas como PIP, CONDA e POETRY.

  • Testes com Pytest: Garanta que seu código funcione como esperado, criando testes unitários e de integração.

  • Versionamento com Git e GitHub: Aprenda a versionar seu projeto e a usar o GitHub para colaboração e publicação.

  • Documentação com MKDocs: Você vai aprender a documentar seu projeto com MKDocs e a publicar sua documentação no GitHub Pages

  • Automatização e CI/CD: Configurar rotinas de integração e entrega contínua para manter a qualidade do projeto.

Começando

Pré-requisitos

  1. Você deve ter o Git instalado em sua máquina. Instruções de instalação do Git aqui.
  2. Você também deve ter uma conta no GitHub. [Instruções de criação de conta no GitHub aqui] (https://docs.github.com/pt/get-started/onboarding/getting-started-with-your-github-account).
  3. Se você for usuário Windows, recomendo esse vídeo: Youtube.
  4. Tutorial de Git e Github básico Ebook.
  5. Se você já é usuário Git, recomendo o vídeo do Akita: Youtube.

Sugestão de leituras. Ebook 1 - Testes Ebook 2 - Github Actions Ebook 3 - Na minha máquina funciona

Instalação e Configuração

  1. Clone o repositório:
git clone https://github.com/lvgalvao/dataprojectstarterkit.git
cd dataprojectstarterkit
  1. Configure a versão correta do Python com pyenv:
pyenv install 3.11.3
pyenv local 3.11.3
  1. Instale as dependências do projeto:
poetry install
  1. Ative o ambiente virtual:
poetry shell
  1. Execute os testes para garantir que tudo está funcionando como esperado:
task test
  1. Execute o comando para ver a documentação do projeto:
task doc
  1. Execute o comando de execucão da pipeline para realizar a ETL:
task run
  1. Verifique na pasta data/output se o arquivo foi gerado corretamente.

Contato

Para dúvidas, sugestões ou feedbacks: