FINANÇAS COMPORTAMENTAIS · PSICOLOGIA ECONÔMICA
Pitch: Estou construindo um framework HTTP em TypeScript para Bun
Olá, pessoal. Estou desenvolvendo o Empilha (https://github.com/empilhajs/empilha), um framework HTTP em TypeScript voltado para aplicações Bun. O projeto começou como…

Olá, pessoal.
Estou desenvolvendo o Empilha (https://github.com/empilhajs/empilha), um framework HTTP em TypeScript voltado para aplicações Bun.
O projeto começou como um estudo pessoal, mas acabou crescendo e hoje já possui alguns recursos que gostaria de compartilhar:
- decorators para controllers e rotas;
- injeção de dependências;
- validação de requisições e respostas;
- autenticação e autorização;
- integração com PostgreSQL;
- suporte a JWT;
- geração de OpenAPI;
- health checks;
- tarefas em background;
- controle de timeout, cancelamento e shutdown.
A documentação está disponível em:
https://empilhajs.github.io/empilha-docs/
Algumas decisões do projeto
O Empilha é bastante inspirado no Spring Boot. Gosto da forma como ele organiza aplicações, trabalha com injeção de dependências, configuração, controllers, ciclo de vida e convenções.
Ao mesmo tempo, tentei adaptar essas ideias ao ecossistema do Bun e do TypeScript, mantendo uma proposta mais enxuta.
Uma decisão importante foi não criar uma camada de ORM. Em vez disso, o framework trabalha diretamente com SQL parametrizado.
Fiz essa escolha por alguns motivos:
- o SQL continua explícito e fácil de revisar;
- evita esconder consultas atrás de abstrações complexas;
- facilita o uso de recursos específicos do PostgreSQL;
- torna mais claro o impacto de uma query no banco;
- combina bem com as ferramentas atuais de assistência por IA.
Hoje, ferramentas de IA conseguem ajudar bastante na criação, explicação e revisão de SQL. Isso não significa que uma query gerada por IA deva ser aceita sem revisão, mas reduz a necessidade de uma camada de ORM apenas para evitar a escrita manual das consultas.
A proposta não é dizer que ORM é ruim. É apenas uma escolha diferente: deixar o framework cuidar da parte HTTP, autenticação, validação, injeção de dependências e ciclo de vida, enquanto o SQL continua sob controle direto da aplicação.
Estado atual
O projeto ainda está no começo e não quero apresentá-lo como uma solução pronta ou madura.
Atualmente, a documentação e algumas mensagens do código ainda não estão internacionalizadas — muitas partes estão em português e provavelmente existem
decisões de API que ainda precisam ser revistas.
Publiquei recentemente a versão 0.1.2 do pacote principal no npm:
- empilha (https://www.npmjs.com/package/empilha)
Os pacotes de integração estão na versão 0.1.1:
- @empilha/pg (https://www.npmjs.com/package/@empilha/pg)
- @empilha/jwt (https://www.npmjs.com/package/@empilha/jwt)
Estou compartilhando o projeto para receber opiniões, críticas e sugestões de quem trabalha com TypeScript, Bun, PostgreSQL ou desenvolvimento de frameworks.
Se você puder dar uma olhada no repositório, deixar uma estrela ou apontar algo que poderia melhorar, já será uma grande ajuda. Quero entender se o projeto faz sentido para outras pessoas e quais partes deveriam ser priorizadas daqui para frente.
Obrigado pela leitura!
Perguntas frequentes
Respostas institucionais sobre esta cobertura, fontes e limites editoriais.
- Sobre o que trata “Pitch: Estou construindo um framework HTTP em TypeScript para Bun”?
- Olá, pessoal.Estou desenvolvendo o Empilha (https://github.com/empilhajs/empilha), um framework HTTP em TypeScript voltado para aplicações Bun.O projeto começou como um estudo pessoal, mas acabou crescendo e hoje já possui alguns recursos que gostaria de compartilhar:decorators para controllers…
- O que a matéria explica sobre “Algumas decisões do projeto”?
- O Empilha é bastante inspirado no Spring Boot. Gosto da forma como ele organiza aplicações, trabalha com injeção de dependências, configuração, controllers, ciclo de vida e convenções.Ao mesmo tempo, tentei adaptar essas ideias ao ecossistema do Bun e do TypeScript, mantendo uma…
- O que a matéria explica sobre “Estado atual”?
- O projeto ainda está no começo e não quero apresentá-lo como uma solução pronta ou madura.Atualmente, a documentação e algumas mensagens do código ainda não estão internacionalizadas — muitas partes estão em português e provavelmente existemdecisões de API que ainda precisam ser…
- Quem edita o conteúdo do Estrato Mente?
- A cobertura é produzida e revisada pela equipe editorial do Estrato Mente, com editor-chefe responsável pela linha editorial. Conheça a redação em https://mente.estrato.cc/equipe/.
- Quais fontes o Estrato prioriza?
- Priorizamos fontes primárias (órgãos oficiais, balanços, estudos revisados, documentos públicos) e cruzamos informações antes da publicação, conforme a política editorial.
- Como solicitar correção de uma matéria?
- Envie o pedido pela página de Correções (https://mente.estrato.cc/correcoes/) ou Contato (https://mente.estrato.cc/contato/). Erros materiais são corrigidos com registro da atualização.
- O conteúdo constitui aconselhamento profissional?
- Não. As matérias têm caráter informativo e jornalístico. Decisões financeiras, de saúde, jurídicas ou educacionais devem considerar profissionais habilitados e a sua situação particular.
- Onde acompanhar a política editorial do Estrato Mente?
- Metodologia, ética e transparência estão em https://mente.estrato.cc/metodologia/, https://mente.estrato.cc/etica-editorial/ e https://mente.estrato.cc/politica-editorial/.