Executando verificação de segurança...
5

Misturar Node, Rust, Go e Python nunca foi... tão fácil?

Salve,

Queria compartilhar um projeto que venho desenvolvendo chamado AtomicKit. A ideia nasceu da frustração de ter que escolher entre a performance do Rust, a facilidade do Python para IA/Dados e o ecossistema do Node.js em um mesmo workflow.

O que é?

O AtomicKit é um orquestrador que permite criar "Atoms" (unidades lógicas em YAML + Código) e "Strands" (pipelines que encadeiam esses átomos).

O que ele faz de diferente:

  1. Poliglotismo Real via STDIN/OUT: Ele não usa apenas scripts. O motor gerencia o ciclo de vida: baixa dependências (pip, npm), inicializa módulos Go e compila binários Rust em tempo de execução (JIT-like) através do Cargo.
  2. Sistema Imunológico: Antes de qualquer execução, o input é validado contra um JSON Schema (Ajv) definido no YAML do átomo. Se o contrato for violado, a execução nem começa.
  3. Recursividade de Strands: Uma das funcionalidades mais fortes é que uma Strand pode chamar outra Strand. Isso permite criar workflows extremamente complexos e modulares, quase como blocos de LEGO lógicos.
  4. Comunicação Universal: O motor injeta JSON no stdin do processo filho e captura o resultado pelo stdout, permitindo que qualquer linguagem que fale JSON possa ser um "Átomo".

Exemplo de um Átomo em Rust:

name: compute_hash
runtime: rust
require: [ "[email protected]" ]
implementation: |
  let text = input["data"].as_str().unwrap_or("");
  let mut hasher = sha2::Sha256::new();
  // ... lógica de hash
  serde_json::json!({ "hash": result })

Por que usar?

Se você precisa de um pipeline onde o pré-processamento é melhor em Python, o cálculo pesado em Rust e a integração final em Node, o AtomicKit resolve a "cola" entre esses mundos sem você precisar subir 3 microserviços diferentes.

O que acham dessa abordagem?

Pacote NPM: https://www.npmjs.com/package/scriba-atomickit

Carregando publicação patrocinada...
1

Achei sua explicação do NPM melhor do que esta. A iniciativa do projeto usar de forma englobada, me parece complexo e uma integração inteligente para resolver esses problemas citados. 🤝