Instalação
Como adicionar o termo_core em projetos TypeScript e Rust, fixar a versão e escolher só os serviços que você usa.
TypeScript
TypeScript puro, só fetch, interface e type, sem nenhuma dependência em runtime. Funciona no navegador, em Node 20+, Bun e Deno.
npm install termo_core --save-exact{
"dependencies": {
"termo_core": "0.1.5"
}
}Cada serviço tem o próprio caminho de importação, bom para o bundle do frontend:
import { buscar_pelo_id_usuario } from "termo_core/auth";
import { criar_arquivo } from "termo_core/bucket";
// ou tudo pela raiz, com um namespace por serviço
import { auth, bucket } from "termo_core";
await auth.buscar_pelo_id_usuario(credencial_de_acesso, id);Rust
[dependencies]
termo_core = "=0.1.5" # todos os serviços
termo_core = { version = "=0.1.5", features = ["webhook_postgres"] } # + fila de saída de eventosCada serviço é uma feature, todas ligadas por padrão (todos_os_servicos). Para compilar menos:
termo_core = { version = "=0.1.5", default-features = false, features = ["auth", "bucket"] }| Feature | O que liga |
|---|---|
todos_os_servicos (padrão) | todos os módulos de serviço |
ai, auth, bucket, intranet, leads, mcp, portal, quality, sell, status, studio, support, tracing, webhook, wms | o módulo do serviço com o mesmo nome |
webhook_publicar | publicar_evento_no_hub_agora e ConfiguracaoDoHub |
webhook_receber | conferência da assinatura Ed25519 das entregas do hub |
webhook_postgres | fila de saída no Postgres do app (inclui webhook_publicar) |
Por que fixar a versão exata
Sempre com =
Nunca use "0.1", "^0.1.5" nem "~0.1.5". Os contratos vêm do SANDBOX e o workflow publica toda mudança subindo só o último número, inclusive quando a mudança quebra código (campo ou rota removida, nome trocado).
Sem a versão exata, um cargo update ou um npm install sem lockfile pode trazer, sem ninguém perceber, um contrato que ainda só existe no sandbox. Para atualizar, troque a versão de propósito e confira se o projeto compila.
As versões do crate e do pacote npm não andam juntas: cada uma sobe quando o código dela muda.
0.1.5. A versão publicada mais recente de cada pacote aparece no topo da página de cada serviço, no bloco de importação.