pegnomeu
v1.2.0
Published
Gerenciador de workspace global de dependências para Bun — by Suissa 🧠
Downloads
10
Maintainers
Readme
“Um workspace global inteligente pra Bun, feito por quem cansou de esperar o Bun terminar o Bun.”
PegNoMeu é um gerenciador de dependências com cache global, auto-link, mini-workspaces e modo de sincronização instantânea — feito 100% em Bun + TypeScript.
A ideia nasceu porque o Bun prometeu “velocidade e simplicidade” — mas, na prática, ainda falta uma camada essencial:
reutilização real de dependências entre projetos.
Cada projeto reinstala as mesmas libs. Cada build baixa de novo. Cada dev perde tempo.
O PegNoMeu resolve isso criando um workspace global no seu sistema, onde as dependências são instaladas uma única vez e reaproveitadas por symlinks (ou cópias, se preferir).
🧪 Motivação: por que criamos isso pro Bun?
Bun é rápido.
Mas rápido sozinho não é suficiente.
O npm e o pnpm já entenderam que o futuro é cache compartilhado e atomicidade de pacotes — mas o Bun ainda depende de lockfiles e reinstalação redundante.
A filosofia do PegNoMeu é simples:
O código é efêmero, o cache é eterno.
Quando você instala axios@latest num projeto, por que baixar de novo em outro?
O PegNoMeu cria um repositório global (~/.pegnomeu_workspace/js) e linka os pacotes direto nos projetos — como um cérebro de dependências.
Além disso, ele adiciona algo que nenhum outro gerenciador oferece:
🧠 Mini-workspaces (os “presets”)
Você pode salvar conjuntos de dependências e aplicá-los em qualquer projeto:
pegnomeu axios fastify zod
# Pergunta se quer salvar como preset → digite "api"
pegnomeu use api
# instala tudo de novo instantaneamente⚡️ Principais recursos
| Recurso | Descrição |
|----------|------------|
| 💾 Cache Global Inteligente | Cada pacote é instalado uma única vez no sistema. |
| 🪄 Symlinks automáticos | Sem duplicação de node_modules, tudo aponta pro cache global. |
| 📦 Modo de cópia (--copy) | Se quiser builds totalmente isolados. |
| 📚 Mini-Workspaces | Crie conjuntos de dependências nomeados e reaplique em segundos. |
| 🧩 Compatível com qualquer projeto Bun | Usa apenas APIs nativas (fs, os, path, child_process). |
| 🛠️ --dev mode | Adiciona pacotes direto em devDependencies. |
| 🧭 sync mode | Copia todo o workspace global para node_modules local. |
| 🖼️ Logs coloridos (kleur) | Feedback claro e divertido. |
| 🤗 Sem dependências externas de runtime | Apenas kleur e Bun. |
🚀 Instalação
bun add -g pegnomeu
npm i -g pegnomeu
# ou executando diretamente
npx pegnomeuVerifique:
pegnomeu --helpSaída esperada:
pegnomeu CLI 1.3.0
Uso:
pegnomeu axios@latest → Instala pacote direto
pegnomeu use api → Usa miniworkspace salvo
pegnomeu list → Lista miniworkspaces
pegnomeu --dev → Instala como devDependency
pegnomeu --copy → Copia em vez de linkar
pegnomeu sync → Copia todo workspace global
pegnomeu --verbose → Logs detalhados💡 Exemplo de uso
# Instala axios globalmente e linka no projeto atual
pegnomeu axios
# Instala múltiplos pacotes
pegnomeu fastify zod openai
# Adiciona pacotes de desenvolvimento
pegnomeu --dev vitest typescript
# Cria e salva um mini-workspace
pegnomeu use api📁 Estrutura interna
O PegNoMeu cria automaticamente:
~/.pegnomeu/
├── js/
│ ├── axios__latest/
│ ├── fastify__5.0.0/
│ └── zod__3.23.0/
└── presets/
├── api.json
├── web.json
└── utils.jsonCada pacote é um diretório completo (cache físico e reutilizável). Os presets são descrições JSON com listas de dependências.
🧠 Filosofia de design
O projeto segue três princípios:
- Zero redundância — Nada é instalado duas vezes.
- Link inteligente — Cada
node_modulesé uma janela pro workspace global. - Simplicidade brutalista — Tudo em TypeScript, sem mágica oculta.
🔮 Roadmap
- [ ] Suporte a múltiplas linguagens (
.pegnomeu/py,.pegnomeu/rust) - [ ] Hash-based registry (checksum do pacote + versão)
- [ ] Sincronização distribuída via IPFS ou NFS
- [ ] UI CLI interativa (
pegnomeu ui) - [ ] Integração com
pegnomeu.jsonlocal
💬 Por que “PegNoMeu”?
Porque toda ferramenta precisa de uma boa provocação.
A ideia é que ele “pega no teu módulo”, mas de forma inteligente —
fazendo o link global do que deveria ser global desde o começo.
O nome é uma homenagem irônica à cultura hacker brasileira:
provocadora, bem-humorada e funcional.
🧑💻 Autor
Suissera da Bahia
Desenvolvedor sênior apaixonado por arquiteturas distribuídas, resilientes e IA.
Criador do ecossistema Full Agentic Stack, EnzyChop.Tech, Virion.Delivery, e agora… PegNoMeu.
📄 Licença
MIT © Suissa — livre pra usar, remixar e aprimorar.
Mas se quebrar, foi o Bun.
