Skip to main content

Pytronic Framework 🤖

Pytronic é um framework de automação robusto, projetado para executar processos repetitivos com eficiência e confiabilidade, utilizando persistência de dados e tentativas automáticas. Ideal para qualquer tipo de automação RPA.

Tecnologias Utilizadas 🚀

  • Python ^3.12
  • Blue (formatação de código)
  • Pytest (testes)
  • Taskipy (gerenciamento de tarefas)
  • PyAutoGUI (automação de interface gráfica)
  • SQLmodel (mapeamento objeto-relacional)

Requisitos 📋

  • Python 3.12 ou superior
  • Poetry

Documentação de Desenvolvimento 💻

1. Instale o Poetry

Se você ainda não tem o Poetry instalado, siga as instruções aqui para instalar.

2. Clone o Repositório 🧩

git clone https://github.com/seu-usuario/pytronic.git
cd pytronic

3. Instale as Dependências 📦

poetry install

4. Ative o Ambiente Virtual do Poetry 🌟

Para facilitar o uso dos comandos do Taskipy, ative o ambiente virtual do Poetry:

poetry shell

💡 Dica: Se você não ativar o poetry shell, será necessário prefixar os comandos do Taskipy com poetry run. Por exemplo: poetry run task lint.

5. Rodando as Tarefas 🔧

Comandos de Desenvolvimento (task)

Os comandos task são específicos para o desenvolvimento do pacote e ajudam a manter a qualidade e a consistência do código.

  • Linting: Verifica a formatação do código

    task lint
    
  • Testes: Executa os testes

    task test
    
  • Pipeline: Executa linting e testes

    task pipeline
    

Comandos de Uso do Framework (pytronic)

Os comandos pytronic são usados para interagir com o framework Pytronic, permitindo inicializar projetos, criar bots e executá-los.

Comando start

Inicializa a estrutura básica do projeto:

pytronic start
  • O que faz: Cria a pasta bots e adiciona um bot de exemplo.
  • Exemplo de uso:
    pytronic start
    

Comando createbot

Cria um novo bot com o nome especificado:

pytronic createbot --name ExampleBot
  • O que faz: Gera automaticamente a estrutura de diretórios e arquivos necessários, utilizando templates.
  • Exemplo de uso:
    pytronic createbot --name ExampleBot
    
    pytronic createbot ExampleBot
    

Comando run

Executa um bot especificado, identificando a classe do bot pelo nome da pasta e carregando a tarefa a ser executada:

pytronic run --bot ExampleBot --task '{"key": "value"}'
  • O que faz: Carrega o bot correspondente pelo nome da pasta e executa a tarefa dinamicamente. Se a opção --task não for informada, o comando carrega a tarefa do arquivo task.json dentro da pasta do bot criado.
  • Exemplos de uso:
    pytronic run --bot ExampleBot --task '{"key": "value"}'
    
    pytronic run --bot ExampleBot --task /caminho/para/task.json
    
    pytronic run ExampleBot --task '{"key": "value"}'
    
    pytronic run ExampleBot
    

Integração Contínua com GitHub Actions ⚙️

O projeto Pytronic utiliza GitHub Actions para automação do pipeline de linting e testes. Toda vez que uma nova branch é criada ou um pull request é aberto, a pipeline é executada para garantir a qualidade do código. As etapas incluem:

  1. Linting: Verifica a formatação do código para garantir a conformidade com os padrões estabelecidos.
  2. Testes: Executa a suíte de testes para assegurar que todas as funcionalidades estão funcionando conforme esperado.

Além disso, sempre que novos commits são sincronizados com uma branch que já possui um pull request aberto, a pipeline é acionada novamente. Isso garante que todas as alterações submetidas passam pelas verificações de qualidade.

Suporte 🌐

Este projeto pode ser executado tanto no Linux quanto no Windows. Atenção: Implementações que utilizam o PyAutoGUI só funcionarão em ambientes que tenham uma interface gráfica (que renderize um desktop no monitor). Caso contrário, o PyAutoGUI não funcionará. Se você encontrar algum problema, sinta-se à vontade para abrir uma issue no repositório.

Metadata

Release files for pytronic 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pytronic 0.1.3
File Size Uploaded
pytronic-0.1.3.tar.gz 12.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pytronic 0.1.3
File Interpreter ABI Platform
pytronic-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 28.3 kB

Release files / pytronic-0.1.3.tar.gz

Download URL pytronic-0.1.3.tar.gz
Size 12.4 kB
Tags Source
SHA-256 checksum
How to use checksums
c3c9743b8b242669190ee5293bc6516962a1929b22db8203458bc63b81a562fe
BLAKE2b-256 checksum
How to use checksums
33cc615a76ec96779751440c26a286751510304ea56732a709f7fc7a987df0fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.0 CPython/3.12.4

Release files / pytronic-0.1.3-py3-none-any.whl

Download URL pytronic-0.1.3-py3-none-any.whl
Size 15.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8cab83c549d4bced29614c524736084041d90b7f6e4ad8f53fc541c3e5929888
BLAKE2b-256 checksum
How to use checksums
81b58829b8c6322a6dc590f78547afb309574593af80ec01378714720ae5f2bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.0 CPython/3.12.4

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page