Sobre o projeto

Nodezator é um aplicativo de desktop que serve como um editor de nós Python generalista. Ele permite que usuários conectem visualmente funções Python e outros callables para construir comportamento paramétrico flexível, dados, aplicativos e trechos de código. A ferramenta é construída com Python puro sobre pygame-ce e numpy, e é mantida por Kennedy Richard Silva Guerra como parte do projeto Indie Smiths. As principais capacidades incluem: - **Criação fácil de nós**: Qualquer função ou callable Python pode ser transformado em um nó adicionando uma linha simples `main_callable = ...`. Isso inclui callables de bibliotecas de terceiros como numpy, Pillow, matplotlib e CadQuery. - **Integração com Python**: Os grafos podem ser exportados como código Python puro, garantindo que os fluxos de trabalho não dependam excessivamente do aplicativo. Nodezator é descrito como uma representação visual, baseada em nós, do Python. - **Detecção de proximidade de soquetes**: Os usuários podem conectar nós sem precisar de precisão de mouse perfeita em pixels, com distância de detecção e gráficos personalizáveis. - **Parâmetros de tipo variável**: Suporta nós `*args` e `**kwargs` com soquetes de espaço reservado que aceitam múltiplas conexões, incluindo desempacotamento de iteráveis e dicionários. - **Widgets especializados**: Widgets de entrada para inteiros/flutuantes suportam arrastar para ajustar, expressões aritméticas e algumas funções internas do Python. - **Programação funcional**: Os nós podem referenciar os próprios callables (não apenas chamadas), permitindo funções de ordem superior como `map` e `pow` em modo callable. - **Pacotes de nós**: Os usuários definem nós em pastas (pacotes de nós) que podem ser mantidos localmente, compartilhados manualmente ou distribuídos como pacotes Python via PyPI. Um site de galeria de nós ajuda a descobrir e compartilhar pacotes de nós. - **Testes de sistema**: Automação de GUI integrada para testes de sistema, acessível via Shift+Ctrl+F8. A instalação é feita via `pip install --upgrade nodezator`, ou o código-fonte pode ser baixado e executado como um aplicativo portátil com Python, pygame-ce e numpy instalados. O projeto inclui um manual do usuário disponível no aplicativo e online, e incentiva contribuições da comunidade via discussões no GitHub e pull requests para o branch develop. O código-fonte é dedicado ao domínio público sob a licença The Unlicense.