Skip to main content

Ferramenta CLI para criar estrutura de projetos.

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

architek

architek é uma ferramenta CLI para criar automaticamente a estrutura de projetos.

Instalação

Para instalar, use:

pip install architek

Uso

Para criar um novo projeto no diretorio atual, execute:

arc create

Ou para criar um novo projeto com um nome específico num diretorio novo:

arc create --name nome_do_projeto

Se você preferir não criar um ambiente virtual, adicione a flag –no-venv:

arc create --no-venv

Ou, ao criar o projeto com nome específico:

arc create --name nome_do_projeto --no-venv

Se você deseja inicializar um repositório Git no projeto, adicione a flag –git:

arc create --git

Ou, ao criar o projeto com nome específico:

arc create --name nome_do_projeto --git

Estrutura do Projeto

├── src/                # Código-fonte principal
│   ├── app/            # Aplicação principal
│   ├── core/           # Módulos essenciais e configurações
│   ├── integracoes/    # Integrações com serviços externos
│   ├── utils/          # Funções utilitárias
│   ├── api/            # Endpoints da API
├── config/             # Arquivos de configuração
├── dados/              # Entrada/Saída de arquivos
├── logs/               # Logs detalhados de execução
├── tests/              # Testes unitários
├── requirements.txt    # Dependências do projeto
├── .env                # Variáveis de ambiente
├── Dockerfile          # Configuração do container Docker
├── README.md           # Documentação do projeto
├── main.py             # Ponto de entrada do projeto

📂 src/ (Código-fonte principal)

Aqui ficam todos os scripts e módulos essenciais para o funcionamento do seu.

  • app/ → Contém os projeto individuais, responsáveis pela automação das tarefas. Exemplo: Um projeto de automação `bot_exemplo.py` que pode fazer login em um sistema e extrair dados.

  • core/ → Contém funcionalidades reutilizáveis essenciais, como manipulação de logs, autenticação e controle de erros. Exemplo: `logger.py` para registrar atividades do robô.

  • integracoes/ → Guarda os módulos que fazem comunicação com sistemas externos, como APIs, bancos de dados, ou WebServices. Exemplo: `api_cliente.py` pode conter funções para enviar e receber dados de uma API.

  • utils/ → Contém funções auxiliares comuns ao projeto, como manipulação de arquivos, datas e formatação de strings. Exemplo: `arquivos.py` pode ter funções para ler e escrever CSV, Excel, etc.

  • api/ → Caso seu projeto precise expor serviços via API, aqui ficarão os endpoints necessários. Exemplo: `server.py` pode rodar um FastAPI/Flask para disponibilizar um serviço.

📁 config/ (Configurações do projeto)

Contém arquivos de configuração, como variáveis de ambiente ou JSON/YAML para armazenar credenciais e parâmetros. Exemplo: `config.yaml` pode armazenar URLs de APIs, usuários e senhas criptografadas.

📁 dados/ (Entrada e saída de arquivos)

Diretório destinado para armazenar arquivos usados, como planilhas, XMLs, PDFs e outros dados de entrada/saída. Exemplo: O bot pode buscar arquivos CSV aqui e gerar relatórios em Excel.

📁 logs/ (Registro das execuções)

Armazena logs detalhados das execuções. É essencial para rastrear erros e entender o comportamento do projeto. Exemplo: `execucao_20240207.log` conterá um histórico do que o codigo fez durante uma execução.

📁 tests/ (Testes automatizados)

Guarda os testes unitários para validar a funcionalidade dos módulos do projeto. Exemplo: `test_bots.py` pode conter testes para garantir que um bot de automação se comporta corretamente.

📄 requirements.txt (Lista de dependências)

Este arquivo contém todas as bibliotecas Python necessárias para o projeto rodar corretamente. O comando abaixo instalará tudo automaticamente:

pip install -r requirements.txt

📄 .env (Variáveis de ambiente)

Arquivo utilizado para armazenar variáveis de ambiente, como chaves secretas, configurações de banco de dados ou API, e flags de desenvolvimento. Exemplo:

SECRET_KEY=your_secret_key_here
DEBUG=True

📄 Dockerfile (Configuração do container Docker)

Arquivo de configuração para criar uma imagem Docker do projeto, facilitando o processo de deploy em containers. Exemplo de conteúdo:

# Dockerfile exemplo
FROM python:3.12
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
CMD ["python", "main.py"]

📄 README.md (Documentação do projeto)

Arquivo de documentação que explica o objetivo do projeto, como instalar, rodar e configurar. Deve conter um guia passo a passo para que qualquer pessoa possa entender e contribuir.

📄 main.py (Ponto de entrada do projeto)

Arquivo principal que inicia a execução.

Exemplo de código:

if __name__ == "__main__":
    print("iniciado!")

💡 Com essa estrutura organizada, fica muito mais fácil manter o código limpo, escalável e reutilizável! 🚀

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

architek-0.8.1.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

architek-0.8.1-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file architek-0.8.1.tar.gz.

File metadata

  • Download URL: architek-0.8.1.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for architek-0.8.1.tar.gz
Algorithm Hash digest
SHA256 65d7df05e053583135f2df931fdeada19bc284b2dda257d5abfe4894c89dde16
MD5 3b0f88af3f71b528a93066397e61ef64
BLAKE2b-256 c8127088ae61a5292a5caa4faec356d6c9817c5e63f298a61b9519e4a7c61198

See more details on using hashes here.

File details

Details for the file architek-0.8.1-py3-none-any.whl.

File metadata

  • Download URL: architek-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 8.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for architek-0.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0c55542fd51bbdcc6b29f84a562a646c74ccde0e6d60eddea39d2c77b4ff1685
MD5 33ae2e48a6f5f12b091b47b29a72fefe
BLAKE2b-256 1d1bc92a943b8956f35592f6f3cf72578882ab73b2b35145f3fe9b2dc0d6e191

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page