APIs REST em TypeScript orientadas a contrato e seguras por padrão, feitas para equipes que desenvolvem com IA
O DaloyJS traz configurações seguras por padrão, se recusa a iniciar em produção diante dos erros de configuração que conhece e roda com zero dependências em tempo de execução, com um pipeline de publicação reforçado e assinado com proveniência. Nenhum framework torna um aplicativo totalmente seguro nem impede todos os ataques à cadeia de suprimentos, então a documentação diz o que vem ativado por padrão, o que você ativa e quais riscos permanecem.
Primeiros passos, instalação, tutorial e os guias principais (roteamento, validação, erros, OpenAPI, cliente tipado, segurança) estão em português; o resto da documentação e o blog, em inglês.
$ pnpm create daloy@latest my-api- Mais de 3.000 testes do framework passando
- Limites de cobertura: ≥90% de linhas e funções, ≥92% de branches
- 0 dependências em tempo de execução
- Node 24 LTS, Node 26+, Bun, Deno, Cloudflare
- Licença MIT
Segurança e cadeia de suprimentos
Seguro por padrão: a camada de defesa para código gerado por IA
Quando modelos de IA geram o código, a velocidade de digitação do desenvolvedor deixa de ser o gargalo: o que importa é a segurança em tempo de execução e a integridade da cadeia de suprimentos. O DaloyJS aplica proteções na camada de execução: limites de tamanho do corpo da requisição, timeouts, proteção contra poluição de protótipo, ocultação dos detalhes de erros 5xx e recusa em iniciar com configurações incorretas, sem nenhuma dependência transitiva para explorar.
Configurações de execução seguras por padrão
Zero dependências em tempo de execução
Templates reforçados para a cadeia de suprimentos
Templates feitos para IA
Streaming e observabilidade
Portável entre runtimes
Orientado a contrato desde o design
Clientes tipados com Hey API
Tudo incluído
Benchmarks e desempenho
Os números, com os asteriscos incluídos
Quando agentes de IA encadeiam ferramentas e disparam requisições com alta concorrência, o throughput e a latência de cold start passam a ser críticos. O DaloyJS vem com as verificações de segurança ativadas por padrão, e estes benchmarks medem o desempenho com todas as proteções ligadas.
Como o DaloyJS se compara
Dependências transitivas instaladas
Cada pacote que a instalação puxa é uma superfície de ataque em que alguém precisa confiar. DaloyJS e Hono são os únicos dois que não trazem nenhuma.
O que isso significa para você: Menos pacotes em que confiar significa menos CVEs e nenhum script postinstall inesperado. Zero dependências significa que o framework não abre portas próprias na cadeia de suprimentos; o restante da sua árvore de dependências continua sendo sua responsabilidade.
Conclusão: O DaloyJS instala 0 dependências transitivas, empatado com o Hono como a menor superfície na cadeia de suprimentos, enquanto um aplicativo NestJS seguro traz 86.
Apple M3 Max · 16 cores · Node v26.4.0 · outubro de 2026 · @daloyjs/core 1.5.4 · código em bench/cross-framework
Por que isto é comparar laranjas com maçãs
- Laranjas com maçãs, não uma comparação em pé de igualdade. São ferramentas diferentes fazendo quantidades diferentes de trabalho. Em cada requisição, o DaloyJS valida o corpo contra seu schema Zod ou Valibot e aplica cabeçalhos seguros, um ID de requisição, limites de tamanho do corpo e timeouts, tudo por padrão. Os aplicativos “mínimos” dos outros frameworks não fazem quase nada disso, e mesmo a “paridade de segurança” raramente equivale item por item. Então parte de cada número do DaloyJS é segurança e validação que você teria de construir por conta própria.
- A forma de medir o tamanho é diferente: o DaloyJS é um único pacote sem dependências, enquanto os outros resolvem árvores transitivas cujo tamanho exato depende de quando o lockfile foi gerado.
- O throughput depende da carga: com uma pilha de middlewares comparável dos dois lados, o DaloyJS fica cerca de 27% à frente do Hono nessas rotas GET e cerca de 58% na rota POST com corpo, e ainda valida esse corpo com Zod. Serviços reais costumam ser limitados pelo banco de dados e por I/O, não pelo despacho do framework, então esses micronúmeros raramente preveem o comportamento em produção.
- Runtimes-alvo diferentes: alguns frameworks (por exemplo, o Elysia) são otimizados para Bun, mas aqui são medidos com seus adaptadores de Node para ter uma base justa em um único runtime.
- Uma única máquina, um único momento: um Apple M3 Max, Node v26.4.0, outubro de 2026, com @daloyjs/core 1.5.4 e outra carga em segundo plano na máquina (os dois frameworks foram medidos um logo após o outro, então a comparação se sustenta melhor do que os números absolutos). Seu hardware, seu runtime e suas versões vão mudar esses números.
Feito para máquinas: agentes e ferramentas de IA
O DaloyJS está pronto para MCP
O Model Context Protocol (MCP) é o padrão aberto que agentes de IA como Claude, Cursor e VS Code usam para chamar ferramentas e ler documentação. O DaloyJS suporta os dois lados: seu aplicativo pode se tornar um servidor MCP, e esta documentação (em inglês) já é um.
Transforme sua API em um servidor MCP
O DaloyJS cria servidores MCP apenas com o @daloyjs/core, sem SDK: transporte Streamable HTTP, validação de schemas de entrada e uma proteção de inicialização em produção que se recusa a iniciar quando um endpoint MCP não tem um hook de autenticação na sua cadeia. Ela verifica se o hook está lá e, em produção, se ele rodou em cada requisição, não se ele rejeita alguém, então teste também a sua autenticação.
Leia esta documentação via MCP
Um endpoint público e somente leitura em que seu agente de código pode pesquisar e ler sem copiar e colar. Não precisa de chave de API.
Endpoint
https://daloyjs.dev/mcpsearch_docsBusca por palavras-chave em todas as páginas da documentação, ordenada por relevância.get_docLê o texto completo de uma página pela rota ou pelo slug.list_docsLista todas as páginas de documentação disponíveis em uma única chamada.
Adicione à configuração do seu cliente MCP
Usa um cliente que só aceita stdio? Faça a ponte com npx -y mcp-remote https://daloyjs.dev/mcp.
Limitar o raio de impacto
Contratos como barreiras de segurança, não como sintaxe decorativa
Num fluxo de trabalho centrado em IA, contratos não são um luxo estético para humanos: são a fronteira imposta pela máquina que impede que estruturas de dados alucinadas vazem entre componentes. Um único contrato de rota valida as requisições com rigor, delimita as respostas e gera ao vivo a especificação OpenAPI 3.1 e o cliente tipado.
Referência de API com Scalar, em uma linha
O Scalar é o sucessor moderno do Swagger UI: rápido, limpo, com modo escuro nativo e requisições de teste integradas. No DaloyJS, ele é a interface de documentação padrão, não um plugin: docs: true no construtor de App monta automaticamente esta página em /docs e a especificação OpenAPI 3.1 ao vivo em /openapi.json.
Gerada a partir dos contratos das suas rotas, sem código extra. Prefere Swagger UI ou Redoc? Os dois estão a um campo de configuração de distância. Guia de OpenAPI e da interface de documentação →
Escolhas do ecossistema
O melhor de cada concorrente, com menos concessões
O DaloyJS não tenta vencer em um único quesito. Ele tenta eliminar o trabalho de cola entre as melhores ideias de que os desenvolvedores já gostam.
Reforço portável da cadeia de suprimentos para os aplicativos que você cria
Configurações de instalação do pnpm reforçadas, lockfiles com origem verificada, SBOM + proveniência do npm
Encaixe em serverless / edge
Núcleo baseado em padrões web, adaptadores para vários runtimes
Operação e documentação maduras em Node
Plugins encapsulados, logs estruturados, desligamento gracioso
DX moderna focada em TS, compatível com Bun
Handlers, contexto e cliente tipados de ponta a ponta
A melhor ergonomia de OpenAPI
OpenAPI 3.1 integrado a partir de uma única definição de rota
A melhor geração de clientes tipados
pnpm gen → SDK fetch totalmente tipado
Tudo pronto para entregar com configurações seguras por padrão?
Crie um projeto em segundos com a instalação reforçada para o seu gerenciador de pacotes, uma CI gerada que bloqueia scripts de instalação, GitHub Actions fixadas, Dependabot, CODEOWNERS e verificação da origem do lockfile. Depois, mantenha o contrato enquanto o aplicativo cresce: o mesmo aplicativo roda em Node, Bun, Deno e Cloudflare Workers.
Apoie o projeto
Se o DaloyJS economiza seu tempo, você pode me pagar um café
O DaloyJS é gratuito e tem licença MIT. Se a documentação, os artigos ou o próprio framework ajudaram você a entregar algo com um pouco menos de drama, um café é uma ótima forma de manter o trabalho andando.