{"_id":"@ameva/forge","_rev":"2-8b4ae241932d0cc68ed2b720e359b9fe","name":"@ameva/forge","dist-tags":{"latest":"1.0.1"},"versions":{"0.1.0":{"name":"@ameva/forge","version":"0.1.0","_id":"@ameva/forge@0.1.0","maintainers":[{"name":"uno-km","email":"zhfldk014745@naver.com"}],"homepage":"https://github.com/uno-km/ameva-forge#readme","bugs":{"url":"https://github.com/uno-km/ameva-forge/issues"},"dist":{"shasum":"6d13248884a0df4017db3bfdf6b9a540b791981f","tarball":"https://registry.npmjs.org/@ameva/forge/-/forge-0.1.0.tgz","fileCount":136,"integrity":"sha512-X4yOZwhY9BHKRb4GyHVVqK+2k3BPSjazC2+p4c2M7zg5XyeNgpzwetMCdqDSMHLidTJtKebtaJK61vSIH2IXxw==","signatures":[{"sig":"MEQCIBzzcMm/9QtTP4ZLo6Q6DoMJRRLk8ta899vEzBQyj+7yAiBjRvx2s8KH1ljBqWkw4azcHR/+PKBj6xXsVvgQVDoC6Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3059394},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"gitHead":"873cf7bd84e14166a11e5d490dc8d36a600a0837","scripts":{"test":"jest","build":"rollup -c rollup.config.mjs","test:e2e":"playwright test","test:unit":"jest --testPathIgnorePatterns=tests/e2e","typecheck":"tsc --noEmit","pack:check":"npm pack --dry-run"},"_npmUser":{"name":"uno-km","email":"zhfldk014745@naver.com"},"repository":{"url":"git+https://github.com/uno-km/ameva-forge.git","type":"git"},"_npmVersion":"11.13.0","description":"High-Performance Browser-Native Tensor Computation Engine & Reverse-Mode Autograd Framework Powered by WebGPU","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","tslib":"^2.6.0","rollup":"^3.0.0","ts-jest":"^29.4.12","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^26.2.0","@webgpu/types":"^0.1.34","@playwright/test":"^1.62.1","@rollup/plugin-typescript":"^11.0.0"},"_npmOperationalInternal":{"tmp":"tmp/forge_0.1.0_1787547016550_0.5528760095487433","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@ameva/forge","version":"1.0.1","description":"Universal Browser-Native WebGPU Deep Learning Runtime & Plug-and-Play On-Device Model Hub","repository":{"type":"git","url":"git+https://github.com/uno-km/ameva-forge.git"},"main":"dist/index.js","module":"dist/index.esm.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"scripts":{"build":"rollup -c rollup.config.mjs","typecheck":"tsc --noEmit","test":"jest","test:unit":"jest --testPathIgnorePatterns=tests/e2e","test:e2e":"playwright test","pack:check":"npm pack --dry-run"},"devDependencies":{"@playwright/test":"^1.62.1","@rollup/plugin-typescript":"^11.0.0","@types/jest":"^29.5.14","@types/node":"^26.2.0","@webgpu/types":"^0.1.34","jest":"^29.0.0","rollup":"^3.0.0","ts-jest":"^29.4.12","tslib":"^2.6.0","typescript":"^5.0.0"},"gitHead":"b40d79ffc184a52b4cce16a033c950917ca07143","_id":"@ameva/forge@1.0.1","bugs":{"url":"https://github.com/uno-km/ameva-forge/issues"},"homepage":"https://github.com/uno-km/ameva-forge#readme","_nodeVersion":"24.16.0","_npmVersion":"11.13.0","dist":{"integrity":"sha512-PyjrT9EsLdLhqnrqFbSibC8uvczu/Kdjs0lJadFbKGbAhikshrbowgJWDDuM+WY8LI4yQg9Ku9dSx5Np/7ZNdg==","shasum":"f2c5cfa4040b2cbc505781c8929f402dce139e30","tarball":"https://registry.npmjs.org/@ameva/forge/-/forge-1.0.1.tgz","fileCount":165,"unpackedSize":4531626,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDx8p3BBPwDndkAef8wjndHEwnn4eN94MKTN3r6ufkR8wIgLTLMrTB60D5z/LXYe4h/zZtEEWLICpbv/7ixdFFBB/I="}]},"_npmUser":{"name":"uno-km","email":"zhfldk014745@naver.com"},"directories":{},"maintainers":[{"name":"uno-km","email":"zhfldk014745@naver.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/forge_1.0.1_1788493076878_0.5213477772779942"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-24T04:50:16.364Z","modified":"2026-09-04T03:37:57.256Z","0.1.0":"2026-08-24T04:50:16.784Z","1.0.1":"2026-09-04T03:37:57.065Z"},"bugs":{"url":"https://github.com/uno-km/ameva-forge/issues"},"homepage":"https://github.com/uno-km/ameva-forge#readme","repository":{"type":"git","url":"git+https://github.com/uno-km/ameva-forge.git"},"description":"Universal Browser-Native WebGPU Deep Learning Runtime & Plug-and-Play On-Device Model Hub","maintainers":[{"name":"uno-km","email":"zhfldk014745@naver.com"}],"readme":"# @ameva/forge (WebGPU On-Device AI Engine)\r\n\r\n> **Universal Browser-Native WebGPU Deep Learning Runtime & Plug-and-Play On-Device Model Hub.**\r\n\r\n[![npm version](https://img.shields.io/npm/v/@ameva/forge?color=CB3837&logo=npm&logoColor=white&label=npm)](https://www.npmjs.com/package/@ameva/forge)\r\n[![License: Apache-2.0](https://img.shields.io/badge/License-Apache--2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\r\n[![WebGPU Native](https://img.shields.io/badge/WebGPU-Pure_WGSL_Shaders-blueviolet.svg)](https://uno-km.vercel.app/lib/forge/)\r\n[![Tests](https://img.shields.io/badge/Tests-279%2F279_Passing_(100%25)-brightgreen.svg)](https://uno-km.vercel.app/lib/forge/benchmarks.html)\r\n\r\n**@ameva/forge** is an industrial-grade, client-side WebGPU neural execution runtime designed specifically for modern web browsers. It empowers web applications to run state-of-the-art neural networks locally on user GPUs with **zero server costs**, **100% data privacy**, and **zero-latency on-device inference**.\r\n\r\n---\r\n\r\n## ⚡ Key Highlights for Web Developers\r\n\r\n1. **Plug & Play GGUF Model Hub**  \r\n   Load quantized models (LLaMA-3, SmolLM, Qwen2.5) directly from Hugging Face URLs or via local drag-and-drop. Automatically bypasses 32-bit WASM 2GB limits using Direct DMA buffer mapping.\r\n2. **Built-in Byte-Level BPE & SentencePiece Tokenizer**  \r\n   Full client-side tokenization engine that reconstructs vocabularies from GGUF metadata. Reversible, lossless text encoding and decoding with zero external dependencies.\r\n3. **60 FPS Non-Blocking Autoregressive Streaming**  \r\n   Generate LLM text with real-time typewriter effects without freezing the UI thread, powered by cooperative event-loop scheduling.\r\n4. **Web Worker Thread Isolation**  \r\n   Offload heavy transformer decoding and GPU dispatches to dedicated Web Workers to ensure perfectly smooth animations and prevent OS GPU timeout (TDR) crashes.\r\n5. **Universal Multimodal Runtimes**  \r\n   Hardware-accelerated compute shaders for STT (Whisper Mel-STFT), TTS (Waveform synthesis), Vision (CLIP ViT), and Diffusion (VAE latent decoding).\r\n\r\n---\r\n\r\n## 📦 Installation\r\n\r\n### NPM / Yarn / PNPM\r\n```bash\r\nnpm install @ameva/forge\r\n# or\r\nyarn add @ameva/forge\r\n```\r\n\r\n### Browser Direct CDN (Zero-Install)\r\n```html\r\n<script src=\"https://uno-km.vercel.app/lib/forge/dist/index.js\"></script>\r\n```\r\n\r\n---\r\n\r\n## 🚀 Quick Start (TypeScript / JavaScript)\r\n\r\n### 1. Plug & Play LLM Inference from Hugging Face\r\n\r\n```typescript\r\nimport { ModelLoader, LLMTextGenerator } from '@ameva/forge';\r\n\r\n// 1. Stream & Cache GGUF model directly from Hugging Face CDN\r\nconst loader = new ModelLoader({ cacheStorage: true });\r\nconst model = await loader.loadFromUrl(\r\n  'https://huggingface.co/HuggingFaceTB/SmolLM-135M-Instruct-GGUF/resolve/main/smollm-135m-instruct.q4_k_m.gguf',\r\n  (progress) => console.log(`Downloading: ${(progress * 100).toFixed(1)}%`)\r\n);\r\n\r\n// 2. Initialize 60 FPS non-blocking streaming generator\r\nconst generator = new LLMTextGenerator(model, {\r\n  temperature: 0.7,\r\n  topP: 0.9,\r\n  topK: 40,\r\n  repetitionPenalty: 1.1\r\n});\r\n\r\n// 3. Generate streaming tokens\r\nawait generator.generateStream(\"Explain WebGPU in one sentence:\", (tokenText) => {\r\n  document.getElementById('output').textContent += tokenText;\r\n});\r\n```\r\n\r\n---\r\n\r\n### 2. Low-Level WebGPU Tensor Autograd\r\n\r\n```typescript\r\nimport { Tensor, initWebGPU } from '@ameva/forge';\r\n\r\n// Initialize WebGPU adapter & device context\r\nawait initWebGPU();\r\n\r\n// Create tensors with gradient tracking\r\nconst x = new Tensor([1.0, 2.0, 3.0, 4.0], { shape: [2, 2], requiresGrad: true });\r\nconst w = new Tensor([0.5, -0.5, 1.0, 2.0], { shape: [2, 2], requiresGrad: true });\r\n\r\n// Forward pass through native WGSL compute shaders\r\nconst y = x.matmul(w).relu().sum();\r\n\r\n// Reverse-mode automatic differentiation\r\nawait y.backward();\r\n\r\nconsole.log('Output Value:', y.item());\r\nconsole.log('Gradients of x:', await x.grad.toArray());\r\n```\r\n\r\n---\r\n\r\n## 🏛️ Multimodal Architecture\r\n\r\n```text\r\n+-----------------------------------------------------------------------------------+\r\n|                        Browser Web Application Layer                              |\r\n|   HTML5 Canvas  |  Web Audio API  |  DOM Typewriter UI  |  Drag-and-Drop Dropzone |\r\n+-----------------------------------------------------------------------------------+\r\n|                 @ameva/forge Client Neural Runtime Engine                         |\r\n|   Byte-Level BPE Tokenizer  *  Shifted Softmax Sampler  *  Worker Isolation Bridge|\r\n+-----------------------------------------------------------------------------------+\r\n|                     On-Device GGUF Direct DMA Loader                              |\r\n|       Hugging Face Chunk Streamer  *  OPFS Cache  *  Tensor Name Mapper           |\r\n+-----------------------------------------------------------------------------------+\r\n|                      WebGPU Native Hardware Shaders                               |\r\n|   Tiled MatMul (WGSL)  *  FlashAttention-2  *  Mel STFT FFT  *  VAE GroupNorm     |\r\n+-----------------------------------------------------------------------------------+\r\n```\r\n\r\n---\r\n\r\n## 📄 License\r\n\r\nApache-2.0 License. Copyright (c) 2026 uno-km (AMEVA Foundation).\r\n\r\n","readmeFilename":"README.md"}