{"_id":"@dogshihtzuamora2/artghos","_rev":"2-447378928eeed8c0f49a992d4902f3d5","name":"@dogshihtzuamora2/artghos","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@dogshihtzuamora2/artghos","version":"1.0.0","keywords":["artghos","node","package","empacotamento"],"author":{"name":"Seu Nome","email":"email@exemplo.com"},"license":"ISC","_id":"@dogshihtzuamora2/artghos@1.0.0","maintainers":[{"name":"dogshihtzuamora","email":"novaissalesravy@gmail.com"}],"homepage":"https://github.com/dogshihtzuamora2/Artghos#readme","bugs":{"url":"https://github.com/dogshihtzuamora2/Artghos/issues"},"dist":{"shasum":"95ee63ef3470f9120858b8ea291b3c2afe485fad","tarball":"https://registry.npmjs.org/@dogshihtzuamora2/artghos/-/artghos-1.0.0.tgz","fileCount":3,"integrity":"sha512-6wiVVWOPuMc4fVO/lx06eSagkCbnNIBwwON4P/dB8wpPMQ3tcjZkv7/JB6X/4mj0oqud9XWBzg/bUyQ7pxRkaw==","signatures":[{"sig":"MEUCIQDC5DpX8x5xCTtreBCO+v27ucXzIrRHO1g312Gq7E4fOgIgVw4QHnz3WWC8luEo9RvRMTUlrM23bkMOCxqWmomrB44=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10668},"main":"Artghos.js","type":"commonjs","gitHead":"2df3bc0ece7669ce8576b1a0e45a6e5f6f3f7cd6","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"dogshihtzuamora","email":"novaissalesravy@gmail.com"},"repository":{"url":"git+https://github.com/dogshihtzuamora2/Artghos.git","type":"git"},"_npmVersion":"11.5.1","description":"Sistema de empacotamento e carregamento de pacotes Node.js em formato `.art`","directories":{},"_nodeVersion":"24.7.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/artghos_1.0.0_1761529801522_0.7498109363117214","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2025-10-27T01:50:01.412Z","modified":"2025-10-31T14:27:17.289Z","1.0.0":"2025-10-27T01:50:01.722Z"},"bugs":{"url":"https://github.com/dogshihtzuamora2/Artghos/issues"},"author":{"name":"Seu Nome","email":"email@exemplo.com"},"license":"ISC","homepage":"https://github.com/dogshihtzuamora2/Artghos#readme","keywords":["artghos","node","package","empacotamento"],"repository":{"url":"git+https://github.com/dogshihtzuamora2/Artghos.git","type":"git"},"description":"Sistema de empacotamento e carregamento de pacotes Node.js em formato `.art`","maintainers":[{"email":"novaissalesravy@gmail.com","name":"dogshihtzuamora"},{"email":"on00dev.dev@gmail.com","name":"on00dev"}],"readme":"# Artghos\n\nSistema de empacotamento e carregamento de pacotes Node.js em formato `.art`\n\n## 📦 O que é?\n\nArtghos permite empacotar qualquer pacote npm (com todas suas dependências) em um único arquivo `.art` compactado, que pode ser facilmente distribuído e carregado sem precisar de internet ou npm install.\n\n## 🚀 Instalação\n\n### 1. Clone o repositório\n\n```bash\ngit clone https://github.com/Dogshihtzuamora/Artghos.git\ncd Artghos\n```\n\n### 2. Pronto para usar!\n\nNão precisa instalar nada! O Artghos usa apenas módulos nativos do Node.js.\n\n## 📝 Como usar\n\n### 1. Criar um pacote .art\n\nUse o `Artghos.js` para baixar e empacotar qualquer pacote do npm:\n\n```bash\nnode Artghos.js <nome-do-pacote> [versao]\n```\n\n**Exemplos:**\n```bash\nnode Artghos.js express\nnode Artghos.js express 4.18.0\nnode Artghos.js lodash latest\nnode Artghos.js hyperswarm\n```\n\nIsso vai:\n- Baixar o pacote e todas as dependências via npm\n- Empacotar tudo em um arquivo `.art` compactado\n- Salvar em `./art-packages/nome-do-pacote.art`\n\n### 2. Carregar um pacote .art\n\nUse a função `ReqArt` para carregar pacotes:\n\n```javascript\nconst ReqArt = require('./Artghos.js');\n\n// Carrega o pacote\nconst express = ReqArt('./art-packages/express.art');\n\n// Use normalmente\nconst app = express();\napp.get('/', (req, res) => {\n  res.send('Olá do Express via .art!');\n});\napp.listen(3000);\n```\n\n## ✨ Vantagens\n\n- ✅ **Portável**: Um único arquivo com tudo incluído\n- ✅ **Offline**: Não precisa de internet para usar\n- ✅ **Rápido**: Cache automático - carrega uma vez só\n- ✅ **Simples**: Sem npm install, sem node_modules gigante\n- ✅ **Universal**: Funciona em qualquer sistema com Node.js\n- ✅ **Zero dependências**: Usa apenas módulos nativos (fs, path, zlib)\n- ✅ **Compacto**: Compressão gzip eficiente\n\n## 📁 Estrutura\n\n```\nArtghos/\n├── Artghos.js          # Sistema completo (criar e carregar .art)\n├── art-packages/       # Pasta onde ficam os .art criados\n└── README.md\n```\n\n## 🛠️ Requisitos\n\n- Node.js v14 ou superior\n- npm (apenas para baixar pacotes na criação dos .art)\n\n## 📖 Exemplos\n\n### Exemplo 1: Express Server\n\n```javascript\n// 1. Criar o pacote (terminal)\n// node Artghos.js express\n\n// 2. Usar no código\nconst ReqArt = require('./Artghos.js');\nconst express = ReqArt('./art-packages/express.art');\n\nconst app = express();\napp.get('/', (req, res) => res.send('Express via .art!'));\napp.listen(3000, () => console.log('Servidor rodando!'));\n```\n\n### Exemplo 2: Lodash\n\n```javascript\n// 1. Criar o pacote\n// node Artghos.js lodash\n\n// 2. Usar\nconst ReqArt = require('./Artghos.js');\nconst _ = ReqArt('./art-packages/lodash.art');\n\nconsole.log(_.chunk([1, 2, 3, 4], 2)); // [[1, 2], [3, 4]]\nconsole.log(_.sum([1, 2, 3, 4, 5]));   // 15\n```\n\n### Exemplo 3: Hyperswarm P2P\n\n```javascript\n// 1. Criar o pacote\n// node Artghos.js hyperswarm\n\n// 2. Usar\nconst ReqArt = require('./Artghos.js');\nconst Hyperswarm = ReqArt('./art-packages/hyperswarm.art');\n\nconst swarm = new Hyperswarm();\nconst topic = Buffer.alloc(32).fill('meu-topico');\n\nswarm.join(topic, { server: true, client: true });\nswarm.on('connection', (conn) => {\n  console.log('Nova conexão P2P!');\n  conn.write('Olá peer!');\n});\n```\n\n### Exemplo 4: Uso programático\n\n```javascript\nconst ReqArt = require('./Artghos.js');\n\n// Instalar e criar .art programaticamente\nReqArt.install('axios', '1.6.0');\n\n// Depois carregar\nconst axios = ReqArt('./art-packages/axios.art');\naxios.get('https://api.github.com/users/github')\n  .then(res => console.log(res.data));\n```\n\n## ⚙️ Como funciona\n\n1. **Criação**: `npm install` baixa o pacote → empacota tudo em formato customizado → comprime com gzip\n2. **Carregamento**: Descomprime → extrai arquivos → carrega o módulo → limpa arquivos temporários\n3. **Cache**: Módulos já carregados ficam em memória para acesso instantâneo\n\n## ⚠️ Notas\n\n- Pacotes .art incluem **todas as dependências**, então podem ficar grandes\n- O cache evita re-extrair o mesmo pacote várias vezes\n- Funciona com qualquer pacote disponível no npm\n- Arquivos temporários são limpos automaticamente\n- Não usa `tar` - formato customizado mais simples\n\n## 🎯 Casos de uso\n\n- 📦 Distribuir apps com dependências incluídas\n- 🌐 Apps offline-first\n- 🔒 Ambientes sem acesso ao npm\n- 🚀 Deploy simplificado\n- 💾 Backup de versões específicas\n- 🎮 Plugins/mods auto-contidos\n\n## 📄 Licença\n\nMIT\n\n---\n\n**Feito com ❤️ para facilitar o compartilhamento de pacotes Node.js**\n","readmeFilename":"README.md"}