{"_id":"@africode/core","_rev":"12-10e6adac084ae37cc059b855a05caf7d","name":"@africode/core","dist-tags":{"latest":"5.0.11"},"versions":{"5.0.0":{"name":"@africode/core","version":"5.0.0","keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"author":{"name":"tap2payco"},"license":"MIT","_id":"@africode/core@5.0.0","maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"homepage":"https://github.com/tap2payco/AfriCode-js#readme","bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"bin":{"africode":"bin/cli.ts","create-africode":"bin/scaffold.ts"},"dist":{"shasum":"da0902ff3353b465560c3a542b82173b2e2183ef","tarball":"https://registry.npmjs.org/@africode/core/-/core-5.0.0.tgz","fileCount":136,"integrity":"sha512-CrzjdYvJIG1MQHLSvWlby1pjsaRLfz+ui01wZXmWxJUVC9N/wfuSkp3sSgRxhPqdW3rMJGxsErbLQMUpMSOWMg==","signatures":[{"sig":"MEUCIC+qWLChfXABHdGCtTcNR5fp3IBOSP7unIBgce2lgnV9AiEA5DQQMYe5OcE7rSsqjuDTEukdY2zYdQbkbILj2SJg2Sw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2294457},"main":"src/index.ts","type":"module","types":"src/index.ts","module":"src/index.ts","exports":{".":"./src/index.ts","./core/*":"./core/*","./styles":"./styles/africanity.css","./components":"./components/index.js","./components/*":"./components/*"},"gitHead":"22e5120408f3520ce9b927abce88c5545de7e00f","scripts":{"dev":"bun run bin/africode.js dev","hot":"bun run bin/africode.js dev --hot","a2ui":"bun run scripts/a2ui-generator.js","lint":"eslint .","test":"bun test","build":"bun run build.ts","start":"bun run server.js","format":"prettier --write \"**/*.{js,jsx,ts,tsx,json,md,css}\"","prepare":"husky","lint:fix":"eslint . --fix","benchmark":"bun run scripts/benchmark.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"elespio","email":"psboniphace@gmail.com"},"repository":{"url":"git+https://github.com/tap2payco/AfriCode-js.git","type":"git"},"_npmVersion":"11.9.0","description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix","prettier --write"],"*.{json,md,css}":["prettier --write"]},"_nodeVersion":"24.14.0","dependencies":{"zod":"^3.22.0","jose":"^5.2.0","node-forge":"^1.3.1","framer-motion":"^12.38.0","@modelcontextprotocol/sdk":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^10.2.1","globals":"^17.5.0","prettier":"^3.8.3","happy-dom":"^20.9.0","@eslint/js":"^10.0.1","@types/bun":"latest","lint-staged":"^16.4.0","eslint-config-prettier":"^10.1.8"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/core_5.0.0_1777719493063_0.6284418024587828","host":"s3://npm-registry-packages-npm-production"}},"5.0.1":{"name":"@africode/core","version":"5.0.1","keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"author":{"name":"tap2payco"},"license":"MIT","_id":"@africode/core@5.0.1","maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"homepage":"https://github.com/tap2payco/AfriCode-js#readme","bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"bin":{"africode":"bin/cli.ts","create-africode":"bin/scaffold.ts"},"dist":{"shasum":"166b46221865552b18c4a677cbd34bb8c5bbd489","tarball":"https://registry.npmjs.org/@africode/core/-/core-5.0.1.tgz","fileCount":138,"integrity":"sha512-mADdJ/msOmhx4SX1V0T2J/p5oF1HNSyvbYyblM4K1KgRJZd8IitLLlqjWFTIqJjuesg85oZP1kdQnVYIdb3dJw==","signatures":[{"sig":"MEUCIHJDomo8zi+0w+DdO5e/wo4U0gK47eM0AJTfd4fU9YTwAiEArk1cApECe2O9DUSRZPMZX8Z6cFbn9jHmZ/YbYRONjTw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2314789},"main":"src/index.ts","type":"module","types":"src/index.ts","module":"src/index.ts","exports":{".":"./src/index.ts","./core/*":"./core/*","./styles":"./styles/africanity.css","./components":"./components/index.js","./components/*":"./components/*"},"gitHead":"9f9abdbc1891db47517164dfef95208eb093c38a","scripts":{"dev":"bun run bin/africode.js dev","hot":"bun run bin/africode.js dev --hot","a2ui":"bun run scripts/a2ui-generator.js","lint":"eslint .","test":"bun test","build":"bun run build.ts","start":"bun run server.js","format":"prettier --write \"**/*.{js,jsx,ts,tsx,json,md,css}\"","prepare":"husky","lint:fix":"eslint . --fix","benchmark":"bun run scripts/benchmark.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"elespio","email":"psboniphace@gmail.com"},"repository":{"url":"git+https://github.com/tap2payco/AfriCode-js.git","type":"git"},"_npmVersion":"11.9.0","description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix","prettier --write"],"*.{json,md,css}":["prettier --write"]},"_nodeVersion":"24.14.0","dependencies":{"zod":"^3.22.0","jose":"^5.2.0","node-forge":"^1.3.1","framer-motion":"^12.38.0","@modelcontextprotocol/sdk":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^10.2.1","globals":"^17.5.0","prettier":"^3.8.3","happy-dom":"^20.9.0","@eslint/js":"^10.0.1","@types/bun":"latest","lint-staged":"^16.4.0","eslint-config-prettier":"^10.1.8"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/core_5.0.1_1777736755151_0.22569439026719262","host":"s3://npm-registry-packages-npm-production"}},"5.0.2":{"name":"@africode/core","version":"5.0.2","keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"author":{"name":"tap2payco"},"license":"MIT","_id":"@africode/core@5.0.2","maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"homepage":"https://github.com/tap2payco/AfriCode-js#readme","bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"bin":{"africode":"bin/africode.js","create-africode":"bin/create-africode.js"},"dist":{"shasum":"4f89c7b06b9d5ec073facfa65cbf7e08aa52cfb9","tarball":"https://registry.npmjs.org/@africode/core/-/core-5.0.2.tgz","fileCount":143,"integrity":"sha512-OzrzN9+LuTvr3kNemUX7Q3glxnoxytA+ToVwoBkwt25E/KaolKNLXsQhHW2tnucD3dNJzIvTROjztMUGnf2A+Q==","signatures":[{"sig":"MEQCIEsJ9nhL7v9XU6wXfHsgHOQHxYxcJ99WZ6X5ijNwxcbgAiBTobJS8MR5lHepNMYe5a8/lFoWE/R20pIDcQRszcKhtA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2306579},"main":"src/index.ts","type":"module","types":"src/index.ts","module":"src/index.ts","exports":{".":"./src/index.ts","./core/*":"./core/*","./styles":"./styles/africanity.css","./components":"./components/index.js","./components/*":"./components/*"},"gitHead":"6ce3b35afa63d34eb437def94738cb4c5b334c93","scripts":{"dev":"bun run bin/africode.js dev","hot":"bun run bin/africode.js dev --hot","a2ui":"bun run scripts/a2ui-generator.js","lint":"eslint .","test":"bun test","build":"bun run build.ts","start":"bun run server.js","format":"prettier --write \"**/*.{js,jsx,ts,tsx,json,md,css}\"","prepare":"husky","lint:fix":"eslint . --fix","benchmark":"bun run scripts/benchmark.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"elespio","email":"psboniphace@gmail.com"},"repository":{"url":"git+https://github.com/tap2payco/AfriCode-js.git","type":"git"},"_npmVersion":"11.13.0","description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix","prettier --write"],"*.{json,md,css}":["prettier --write"]},"_nodeVersion":"24.17.0","dependencies":{"zod":"^3.22.0","jose":"^5.2.0","node-forge":"^1.3.1","framer-motion":"^12.38.0","@modelcontextprotocol/sdk":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^10.2.1","globals":"^17.5.0","prettier":"^3.8.3","happy-dom":"^20.9.0","@eslint/js":"^10.0.1","@types/bun":"latest","lint-staged":"^16.4.0","eslint-config-prettier":"^10.1.8"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/core_5.0.2_1782574466470_0.8872788272366108","host":"s3://npm-registry-packages-npm-production"}},"5.0.3":{"name":"@africode/core","version":"5.0.3","keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"author":{"name":"tap2payco"},"license":"MIT","_id":"@africode/core@5.0.3","maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"homepage":"https://github.com/tap2payco/AfriCode-js#readme","bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"bin":{"africode":"bin/africode.js","create-africode":"bin/create-africode.js"},"dist":{"shasum":"8a742a7446dcebf2d738b2baeb32423f3cb50ec6","tarball":"https://registry.npmjs.org/@africode/core/-/core-5.0.3.tgz","fileCount":143,"integrity":"sha512-VvmDc7LLCWOXNEWNJPVUs7o92ZeUZkmQfkzAH1FumWrKqMpiL7bBqVhLFkpUk/qneECW0ru2OYkn++QwTRHMtg==","signatures":[{"sig":"MEQCIGFJ3m36DNn2xyaXGOYn/jGp5eb9KtZ163jyZhqjGy6XAiBSSKPjAlvxhXkTFsCPoYhkjj7lgh6aeb7smsQBc1Yydg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2308188},"main":"src/index.ts","type":"module","types":"src/index.ts","module":"src/index.ts","exports":{".":"./src/index.ts","./core/*":"./core/*","./styles":"./styles/africanity.css","./components":"./components/index.js","./components/*":"./components/*"},"gitHead":"6ce3b35afa63d34eb437def94738cb4c5b334c93","scripts":{"dev":"bun run bin/africode.js dev","hot":"bun run bin/africode.js dev --hot","a2ui":"bun run scripts/a2ui-generator.js","lint":"eslint .","test":"bun test","build":"bun run build.ts","start":"bun run server.js","format":"prettier --write \"**/*.{js,jsx,ts,tsx,json,md,css}\"","prepare":"husky","lint:fix":"eslint . --fix","benchmark":"bun run scripts/benchmark.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"elespio","email":"psboniphace@gmail.com"},"repository":{"url":"git+https://github.com/tap2payco/AfriCode-js.git","type":"git"},"_npmVersion":"11.13.0","description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix","prettier --write"],"*.{json,md,css}":["prettier --write"]},"_nodeVersion":"24.17.0","dependencies":{"zod":"^3.22.0","jose":"^5.2.0","node-forge":"^1.3.1","framer-motion":"^12.38.0","@modelcontextprotocol/sdk":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^10.2.1","globals":"^17.5.0","prettier":"^3.8.3","happy-dom":"^20.9.0","@eslint/js":"^10.0.1","@types/bun":"latest","lint-staged":"^16.4.0","eslint-config-prettier":"^10.1.8"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/core_5.0.3_1782633021348_0.47743255799693385","host":"s3://npm-registry-packages-npm-production"}},"5.0.4":{"name":"@africode/core","version":"5.0.4","keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"author":{"name":"tap2payco"},"license":"MIT","_id":"@africode/core@5.0.4","maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"homepage":"https://github.com/tap2payco/AfriCode-js#readme","bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"bin":{"africode":"bin/africode.js","create-africode":"bin/create-africode.js"},"dist":{"shasum":"71b2b41a2826c1e7aa91f2d8826eeece855c5fb1","tarball":"https://registry.npmjs.org/@africode/core/-/core-5.0.4.tgz","fileCount":143,"integrity":"sha512-0Vkr40l54wwrdvDxcA5QQAfHwXavu/1ZL15V49uicmVhqYwX84pVSeCm5opQqGHjVopa79BO2tPnfMrKIAM/bA==","signatures":[{"sig":"MEUCIAekaSIxwTyXhzKNpIqUBOtiP6oc5N4cX8WrUzeKV3ywAiEAhfu9k8jTPOwGEhg47bnXES1eS8ALAWm/nIjhG307WUg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2363207},"main":"core/sdk.js","type":"module","types":"core/sdk.js","module":"core/sdk.js","exports":{".":"./core/sdk.js","./core/*":"./core/*","./styles":"./styles/africanity.css","./browser":"./core/sdk-browser.js","./components":"./components/index.js","./components/*":"./components/*"},"gitHead":"6ce3b35afa63d34eb437def94738cb4c5b334c93","scripts":{"dev":"bun run bin/africode.js dev","hot":"bun run bin/africode.js dev --hot","a2ui":"bun run scripts/a2ui-generator.js","lint":"eslint .","test":"bun test","build":"bun run build.ts","start":"bun run server.js","format":"prettier --write \"**/*.{js,jsx,ts,tsx,json,md,css}\"","prepare":"husky","lint:fix":"eslint . --fix","benchmark":"bun run scripts/benchmark.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"elespio","email":"psboniphace@gmail.com"},"repository":{"url":"git+https://github.com/tap2payco/AfriCode-js.git","type":"git"},"_npmVersion":"11.13.0","description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix","prettier --write"],"*.{json,md,css}":["prettier --write"]},"_nodeVersion":"24.17.0","dependencies":{"zod":"^3.22.0","jose":"^5.2.0","node-forge":"^1.3.1","framer-motion":"^12.38.0","@modelcontextprotocol/sdk":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^10.2.1","globals":"^17.5.0","prettier":"^3.8.3","happy-dom":"^20.9.0","@eslint/js":"^10.0.1","@types/bun":"latest","lint-staged":"^16.4.0","eslint-config-prettier":"^10.1.8"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/core_5.0.4_1782635563451_0.41865552859613797","host":"s3://npm-registry-packages-npm-production"}},"5.0.5":{"name":"@africode/core","version":"5.0.5","keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"author":{"name":"tap2payco"},"license":"MIT","_id":"@africode/core@5.0.5","maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"homepage":"https://github.com/tap2payco/AfriCode-js#readme","bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"bin":{"africode":"bin/africode.js","create-africode":"bin/create-africode.js"},"dist":{"shasum":"a389de7428da646f0f74c1f74e13d14d0b8bf545","tarball":"https://registry.npmjs.org/@africode/core/-/core-5.0.5.tgz","fileCount":149,"integrity":"sha512-IPNtNGsX4qCNBhMmM8C2trDImWWBLOiO6xuls6gIh47sZ+6t/Cnv+H6JuM4psSfghWo207kmRH1PX9RooDufPQ==","signatures":[{"sig":"MEUCIBnii2lVxuMRhCwE7ZHuvwjtnuw8ZKAvYGFEUXZbraOcAiEAsVySG9KeuUn7bjBt1aB98pxpJIFMp/zWHn8lvLw4hH0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2446922},"main":"core/sdk.js","type":"module","types":"core/sdk.js","module":"core/sdk.js","exports":{".":"./core/sdk.js","./core/*":"./core/*","./styles":"./styles/africanity.css","./browser":"./core/sdk-browser.js","./components":"./components/index.js","./components/*":"./components/*"},"gitHead":"6ce3b35afa63d34eb437def94738cb4c5b334c93","scripts":{"dev":"bun run bin/africode.js dev","hot":"bun run bin/africode.js dev --hot","a2ui":"bun run scripts/a2ui-generator.js","lint":"eslint .","test":"bun test","build":"bun run build.ts","start":"bun run server.js","format":"prettier --write \"**/*.{js,jsx,ts,tsx,json,md,css}\"","prepare":"husky","lint:fix":"eslint . --fix","benchmark":"bun run scripts/benchmark.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"elespio","email":"psboniphace@gmail.com"},"repository":{"url":"git+https://github.com/tap2payco/AfriCode-js.git","type":"git"},"_npmVersion":"11.13.0","description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix","prettier --write"],"*.{json,md,css}":["prettier --write"]},"_nodeVersion":"24.17.0","dependencies":{"zod":"^3.22.0","jose":"^5.2.0","node-forge":"^1.3.1","framer-motion":"^12.38.0","@modelcontextprotocol/sdk":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^10.2.1","globals":"^17.5.0","prettier":"^3.8.3","happy-dom":"^20.9.0","@eslint/js":"^10.0.1","@types/bun":"latest","lint-staged":"^16.4.0","eslint-config-prettier":"^10.1.8"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/core_5.0.5_1782646266621_0.17998084374816825","host":"s3://npm-registry-packages-npm-production"}},"5.0.6":{"name":"@africode/core","version":"5.0.6","keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"author":{"name":"tap2payco"},"license":"MIT","_id":"@africode/core@5.0.6","maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"homepage":"https://github.com/tap2payco/AfriCode-js#readme","bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"bin":{"africode":"bin/africode.js","create-africode":"bin/create-africode.js"},"dist":{"shasum":"9cc18313a5839910e19e5f1e48cc112b56d2e895","tarball":"https://registry.npmjs.org/@africode/core/-/core-5.0.6.tgz","fileCount":151,"integrity":"sha512-wIpQWlrHNeclBPw3YEqGflPaYLEkfHit2PFvg+aF6Nxl1MCf+6azh/f5b3NIlZDQBtZc9l1Epr92xvAzQWZLBw==","signatures":[{"sig":"MEUCIFnp6id6laHNCig+LrbHtfKj1xS7Zj8YAmkqaHzFfg1EAiEAvNalXtDCibmC6rv2eQKWb8iCTwWb5AKqoXoUrpZMLak=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2483351},"main":"core/sdk.js","type":"module","types":"core/sdk.js","module":"core/sdk.js","exports":{".":"./core/sdk.js","./core/*":"./core/*","./styles":"./styles/africanity.css","./browser":"./core/sdk-browser.js","./components":"./components/index.js","./components/*":"./components/*"},"gitHead":"6ce3b35afa63d34eb437def94738cb4c5b334c93","scripts":{"dev":"bun run bin/africode.js dev","hot":"bun run bin/africode.js dev --hot","a2ui":"bun run scripts/a2ui-generator.js","lint":"eslint .","test":"bun test","build":"bun run build.ts","start":"bun run server.js","format":"prettier --write \"**/*.{js,jsx,ts,tsx,json,md,css}\"","prepare":"husky","lint:fix":"eslint . --fix","benchmark":"bun run scripts/benchmark.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"elespio","email":"psboniphace@gmail.com"},"repository":{"url":"git+https://github.com/tap2payco/AfriCode-js.git","type":"git"},"_npmVersion":"11.13.0","description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix","prettier --write"],"*.{json,md,css}":["prettier --write"]},"_nodeVersion":"24.17.0","dependencies":{"zod":"^3.22.0","jose":"^5.2.0","node-forge":"^1.3.1","framer-motion":"^12.38.0","@modelcontextprotocol/sdk":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^10.2.1","globals":"^17.5.0","prettier":"^3.8.3","happy-dom":"^20.9.0","@eslint/js":"^10.0.1","@types/bun":"latest","lint-staged":"^16.4.0","eslint-config-prettier":"^10.1.8"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/core_5.0.6_1782647624014_0.9011495849884736","host":"s3://npm-registry-packages-npm-production"}},"5.0.7":{"name":"@africode/core","version":"5.0.7","keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"author":{"name":"tap2payco"},"license":"MIT","_id":"@africode/core@5.0.7","maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"homepage":"https://github.com/tap2payco/AfriCode-js#readme","bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"bin":{"africode":"bin/africode.js","create-africode":"bin/create-africode.js"},"dist":{"shasum":"bb85db57702664e1ae37a8cbfb3e79b68898a1b5","tarball":"https://registry.npmjs.org/@africode/core/-/core-5.0.7.tgz","fileCount":190,"integrity":"sha512-Z2VihkO6o0Ak7PEzG6QwrM0Q3X0OxXA5Q8x8QmC9LWGDVpbdETl83HSRLXDecRsDmOFZBX2AJzOdY9ybaAWbhA==","signatures":[{"sig":"MEUCIDfxC8yd9lWNuVIXpwM0FaFAdNw0bffx9X2AfbHu0GYgAiEAz79lhfnMxeg+Rh58qo4YpylWWwxHMKpwT8J4iqOAxJs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2763781},"main":"core/sdk.js","type":"module","types":"core/sdk.js","module":"core/sdk.js","exports":{".":"./core/sdk.js","./core/*":"./core/*","./styles":"./styles/africanity.css","./browser":"./core/sdk-browser.js","./components":"./components/index.js","./components/*":"./components/*"},"gitHead":"6ce3b35afa63d34eb437def94738cb4c5b334c93","scripts":{"dev":"bun run bin/africode.js dev","hot":"bun run bin/africode.js dev --hot","a2ui":"bun run scripts/a2ui-generator.js","lint":"eslint .","test":"bun test","build":"bun run build.ts","start":"bun run server.js","format":"prettier --write \"**/*.{js,jsx,ts,tsx,json,md,css}\"","prepare":"husky","lint:fix":"eslint . --fix","benchmark":"bun run scripts/benchmark.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"elespio","email":"psboniphace@gmail.com"},"repository":{"url":"git+https://github.com/tap2payco/AfriCode-js.git","type":"git"},"_npmVersion":"11.13.0","description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix","prettier --write"],"*.{json,md,css}":["prettier --write"]},"_nodeVersion":"24.17.0","dependencies":{"zod":"^3.22.0","jose":"^5.2.0","node-forge":"^1.3.1","framer-motion":"^12.38.0","@modelcontextprotocol/sdk":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^10.2.1","globals":"^17.5.0","prettier":"^3.8.3","happy-dom":"^20.9.0","@eslint/js":"^10.0.1","@types/bun":"latest","lint-staged":"^16.4.0","eslint-config-prettier":"^10.1.8"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/core_5.0.7_1782659566404_0.5314934205531465","host":"s3://npm-registry-packages-npm-production"}},"5.0.8":{"name":"@africode/core","version":"5.0.8","keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"author":{"name":"tap2payco"},"license":"MIT","_id":"@africode/core@5.0.8","maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"homepage":"https://github.com/tap2payco/AfriCode-js#readme","bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"bin":{"africode":"bin/africode.js","create-africode":"bin/create-africode.js"},"dist":{"shasum":"14569b9b56ab498b84ac8e7592790e2b62eda2fa","tarball":"https://registry.npmjs.org/@africode/core/-/core-5.0.8.tgz","fileCount":190,"integrity":"sha512-iixbPFrjnuNZlFWZYmWrzFGIRp9xouJO40ZmjDAV2a+YCsk9zXyh62+kHbX/azDEFyenUluVrOktUz7Z7w2NFQ==","signatures":[{"sig":"MEQCIDDxCDiCp8V0yiDnbFspwh5IxyRbeW/xie1xQRiXlwEQAiAjLmGGLcW4yD94suzQCm79d+7/pF/qBJ6Z0vRE7uRV/g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2765073},"main":"core/sdk.js","type":"module","types":"core/sdk.js","module":"core/sdk.js","exports":{".":"./core/sdk.js","./core/*":"./core/*","./styles":"./styles/africanity.css","./browser":"./core/sdk-browser.js","./components":"./components/index.js","./components/*":"./components/*"},"gitHead":"6ce3b35afa63d34eb437def94738cb4c5b334c93","scripts":{"dev":"bun run bin/africode.js dev","hot":"bun run bin/africode.js dev --hot","a2ui":"bun run scripts/a2ui-generator.js","lint":"eslint .","test":"bun test","build":"bun run build.ts","start":"bun run server.js","format":"prettier --write \"**/*.{js,jsx,ts,tsx,json,md,css}\"","prepare":"husky","lint:fix":"eslint . --fix","benchmark":"bun run scripts/benchmark.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"elespio","email":"psboniphace@gmail.com"},"repository":{"url":"git+https://github.com/tap2payco/AfriCode-js.git","type":"git"},"_npmVersion":"11.13.0","description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix","prettier --write"],"*.{json,md,css}":["prettier --write"]},"_nodeVersion":"24.17.0","dependencies":{"zod":"^3.22.0","jose":"^5.2.0","node-forge":"^1.3.1","framer-motion":"^12.38.0","@modelcontextprotocol/sdk":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^10.2.1","globals":"^17.5.0","prettier":"^3.8.3","happy-dom":"^20.9.0","@eslint/js":"^10.0.1","@types/bun":"latest","lint-staged":"^16.4.0","eslint-config-prettier":"^10.1.8"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/core_5.0.8_1782661416649_0.942772613239564","host":"s3://npm-registry-packages-npm-production"}},"5.0.9":{"name":"@africode/core","version":"5.0.9","keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"author":{"name":"tap2payco"},"license":"MIT","_id":"@africode/core@5.0.9","maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"homepage":"https://github.com/tap2payco/AfriCode-js#readme","bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"bin":{"africode":"bin/africode.js","create-africode":"bin/create-africode.js"},"dist":{"shasum":"79642d3ae6d61b1ef2b0e8322e180addcd85a2fa","tarball":"https://registry.npmjs.org/@africode/core/-/core-5.0.9.tgz","fileCount":223,"integrity":"sha512-0EDP7GL2J7zAsmVdoQcuHLifp1HA8Yt9NzrnEkEfgoDqQaX6UwZ0PZJACPuqrQZQrrfPAdbptXHom7la3Zcf3w==","signatures":[{"sig":"MEUCIEy2TUtTPjRss4FQupDO7D8/gHxeYUbZZgQANoUfrHC4AiEAuJvQmYYNtBFl26ci2yZ8Hcbaq3zV2mDQeqm/Q7TdPJE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3048364},"main":"core/sdk.js","type":"module","types":"core/sdk.js","module":"core/sdk.js","exports":{".":"./core/sdk.js","./core/*":"./core/*","./styles":"./styles/africanity.css","./browser":"./core/sdk-browser.js","./components":"./components/index.js","./components/*":"./components/*"},"gitHead":"fb901c3ff883028143f7c899d8216f346a477a79","scripts":{"dev":"bun run bin/africode.js dev","hot":"bun run bin/africode.js dev --hot","a2ui":"bun run scripts/a2ui-generator.js","lint":"eslint .","test":"bun test","build":"bun run build.ts","start":"bun run server.js","format":"prettier --write \"**/*.{js,jsx,ts,tsx,json,md,css}\"","prepare":"husky","lint:fix":"eslint . --fix","benchmark":"bun run scripts/benchmark.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"elespio","email":"psboniphace@gmail.com"},"repository":{"url":"git+https://github.com/tap2payco/AfriCode-js.git","type":"git"},"_npmVersion":"11.13.0","description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix","prettier --write"],"*.{json,md,css}":["prettier --write"]},"_nodeVersion":"24.17.0","dependencies":{"zod":"^3.22.0","jose":"^5.2.0","node-forge":"^1.3.1","framer-motion":"^12.38.0","@modelcontextprotocol/sdk":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^10.2.1","globals":"^17.5.0","prettier":"^3.8.3","happy-dom":"^20.9.0","@eslint/js":"^10.0.1","@types/bun":"latest","lint-staged":"^16.4.0","eslint-config-prettier":"^10.1.8"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/core_5.0.9_1784687259352_0.8865394022380835","host":"s3://npm-registry-packages-npm-production"}},"5.0.10":{"name":"@africode/core","version":"5.0.10","keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"author":{"name":"tap2payco"},"license":"MIT","_id":"@africode/core@5.0.10","maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"homepage":"https://github.com/tap2payco/AfriCode-js#readme","bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"bin":{"africode":"bin/africode.js","create-africode":"bin/create-africode.js"},"dist":{"shasum":"8ea1d9fa84ac8d40c1ed7526531e1ff0fb72f1b6","tarball":"https://registry.npmjs.org/@africode/core/-/core-5.0.10.tgz","fileCount":223,"integrity":"sha512-3UzdfeQJyyJqXRJtBxbxiWfU7k4tSOUCiL6btY5jECjuxQvLAlBJH8dPOIgoVwtUkd0Wj7zJwZFYPcF7cp3vMA==","signatures":[{"sig":"MEUCIHkpTGWOG7z22DJOq13gQowSgpieIzED5Jys7vz15i3cAiEAw4zDYCBwAe5LO+IlETXGbrlrcD4fG7yw9BApKBxEKcw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3048108},"main":"core/sdk.js","type":"module","types":"core/sdk.js","module":"core/sdk.js","exports":{".":"./core/sdk.js","./core/*":"./core/*","./styles":"./styles/africanity.css","./browser":"./core/sdk-browser.js","./components":"./components/index.js","./components/*":"./components/*"},"gitHead":"00e654af0376e9f37e7fe5a88e4e711781a72c82","scripts":{"dev":"bun run bin/africode.js dev","hot":"bun run bin/africode.js dev --hot","a2ui":"bun run scripts/a2ui-generator.js","lint":"eslint .","test":"bun test","build":"bun run build.ts","start":"bun run server.js","format":"prettier --write \"**/*.{js,jsx,ts,tsx,json,md,css}\"","prepare":"husky","lint:fix":"eslint . --fix","benchmark":"bun run scripts/benchmark.js","prepublishOnly":"bun run build"},"_npmUser":{"name":"elespio","email":"psboniphace@gmail.com"},"repository":{"url":"git+https://github.com/tap2payco/AfriCode-js.git","type":"git"},"_npmVersion":"11.13.0","description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","directories":{},"lint-staged":{"*.{js,ts}":["eslint --fix","prettier --write"],"*.{json,md,css}":["prettier --write"]},"_nodeVersion":"24.17.0","dependencies":{"zod":"^3.22.0","jose":"^5.2.0","node-forge":"^1.3.1","framer-motion":"^12.38.0","@modelcontextprotocol/sdk":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^10.2.1","globals":"^17.5.0","prettier":"^3.8.3","happy-dom":"^20.9.0","@eslint/js":"^10.0.1","@types/bun":"latest","lint-staged":"^16.4.0","eslint-config-prettier":"^10.1.8"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/core_5.0.10_1784832185486_0.9875275141806137","host":"s3://npm-registry-packages-npm-production"}},"5.0.11":{"name":"@africode/core","version":"5.0.11","description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","module":"core/sdk.js","main":"core/sdk.js","types":"core/sdk.js","type":"module","exports":{".":"./core/sdk.js","./browser":"./core/sdk-browser.js","./styles":"./styles/africanity.css","./core/*":"./core/*","./components":"./components/index.js","./components/*":"./components/*"},"bin":{"africode":"bin/africode.js","create-africode":"bin/create-africode.js"},"scripts":{"dev":"bun run bin/africode.js dev","build":"bun run build.ts","start":"bun run server.js","test":"bun test","prepublishOnly":"bun run build","lint":"eslint .","lint:fix":"eslint . --fix","format":"prettier --write \"**/*.{js,jsx,ts,tsx,json,md,css}\"","benchmark":"bun run scripts/benchmark.js","prepare":"husky","hot":"bun run bin/africode.js dev --hot","a2ui":"bun run scripts/a2ui-generator.js"},"lint-staged":{"*.{js,ts}":["eslint --fix","prettier --write"],"*.{json,md,css}":["prettier --write"]},"keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"author":{"name":"tap2payco"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/tap2payco/AfriCode-js.git"},"bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"homepage":"https://github.com/tap2payco/AfriCode-js#readme","publishConfig":{"access":"public"},"dependencies":{"framer-motion":"^12.38.0","zod":"^3.22.0","@modelcontextprotocol/sdk":"^0.4.0","jose":"^5.2.0","node-forge":"^1.3.1"},"devDependencies":{"@eslint/js":"^10.0.1","@types/bun":"latest","eslint":"^10.2.1","eslint-config-prettier":"^10.1.8","globals":"^17.5.0","happy-dom":"^20.9.0","husky":"^9.1.7","lint-staged":"^16.4.0","prettier":"^3.8.3"},"peerDependencies":{"typescript":"^5"},"gitHead":"36052120075b842a49c5a5fd8b8b7f6fa732ec1c","_id":"@africode/core@5.0.11","_nodeVersion":"24.17.0","_npmVersion":"11.13.0","dist":{"integrity":"sha512-2Zhe/TkNkDiwhfAkUTwMKGRUajtP2ijwzdO6ZvurM5OdMXBwBvo9Oj3+3Iy2htoqCgHkXp59+452xH0I5oo9OA==","shasum":"ad87aab7ee83bd1f380b500f40c47646c1d2d5f7","tarball":"https://registry.npmjs.org/@africode/core/-/core-5.0.11.tgz","fileCount":224,"unpackedSize":3048069,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCgRDrBRE4BzfpXhtT9QNRsmxzPuxgVIPAkOIAXv4jMcwIgIp6hGOsnIMKyFlAPz5Nv0J+aBtKhbWaJN6C0QTzMCzk="}]},"_npmUser":{"name":"elespio","email":"psboniphace@gmail.com"},"directories":{},"maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/core_5.0.11_1784882249217_0.39841118018165433"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-02T10:58:12.927Z","modified":"2026-07-24T08:37:29.643Z","5.0.0":"2026-05-02T10:58:13.271Z","5.0.1":"2026-05-02T15:45:55.336Z","5.0.2":"2026-06-27T15:34:26.687Z","5.0.3":"2026-06-28T07:50:21.506Z","5.0.4":"2026-06-28T08:32:43.607Z","5.0.5":"2026-06-28T11:31:06.792Z","5.0.6":"2026-06-28T11:53:44.216Z","5.0.7":"2026-06-28T15:12:46.630Z","5.0.8":"2026-06-28T15:43:36.808Z","5.0.9":"2026-07-22T02:27:39.532Z","5.0.10":"2026-07-23T18:43:05.749Z","5.0.11":"2026-07-24T08:37:29.365Z"},"bugs":{"url":"https://github.com/tap2payco/AfriCode-js/issues"},"author":{"name":"tap2payco"},"license":"MIT","homepage":"https://github.com/tap2payco/AfriCode-js#readme","keywords":["african","framework","full-stack","websocket","middleware","orm","ui","components","patterns","bun","vanilla-js","real-time","generative-ai","fintech","compliance","nida","tips","aml","tanzania","a2ui","hot-reload"],"repository":{"type":"git","url":"git+https://github.com/tap2payco/AfriCode-js.git"},"description":"Bun-native full-stack framework with generative AI, fintech compliance, and real-time performance - built for Tanzanian digital economy","maintainers":[{"name":"elespio","email":"psboniphace@gmail.com"}],"readme":"# 🌍 AfriCode v5.0.0 — The Design System of Sovereignty\r\n\r\n> **Autonomous Framework for African Digital Economy**  \r\n> Bridging AI safety, fintech compliance, and cultural heritage through high-performance web architecture.\r\n\r\n![Version: 5.0.0](https://img.shields.io/badge/Version-5.0.0-green.svg)\r\n![Status: Cloud Ready](https://img.shields.io/badge/Status-Cloud%20Ready-brightgreen.svg)\r\n![AMD AI Cloud: $100 Credits](https://img.shields.io/badge/AMD%20AI%20Cloud-%24100%20Credits-orange.svg)\r\n![Alibaba Cloud: Free Tier](https://img.shields.io/badge/Alibaba%20Cloud-Free%20Tier-blue.svg)\r\n![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)\r\n\r\n## Overview\r\n\r\nAfriCode v5.0.0 is an autonomous full-stack framework that \"owns\" the application lifecycle. Built on **Bun runtime** with **TypeScript-first** architecture, it provides AI-safe component generation, comprehensive fintech compliance, and zero-downtime infrastructure for the African digital economy.\r\n\r\n### Strategic Vision: From Tanzania to the Continent\r\n\r\nFollowing the rollout framework, AfriCode v5.0.0 implements a phased Pan-African expansion:\r\n\r\n- **Phase 1 (Months 1-4)**: Silicon Dar foundation with TIPS integration\r\n- **Phase 2 (Months 5-9)**: East African Corridor (Kenya, Uganda, Rwanda)\r\n- **Phase 3 (Months 10-15)**: West African Hub (Nigeria, Ghana)\r\n- **Phase 4 (Months 16-24)**: Continental governance and sustainability\r\n\r\n## ✨ Autonomous Features\r\n\r\n### 🤖 AI-Safe Architecture (A2UI Protocol)\r\n- **Robot-First Manifest**: Machine-readable component catalog prevents hallucinations\r\n- **Ethnomathematical Patterns**: Procedural generation of Kente, Ndebele, Shuka motifs\r\n- **Schema Validation**: Pre-approved components with usage hints and constraints\r\n\r\n### 🔐 Fintech Compliance \"Hardening\"\r\n- **NIDA CIG Bridge**: VPN-tunneled identity verification with Ed25519 cryptography\r\n- **TIPS Integration**: Bank of Tanzania-compliant payment flows\r\n- **AML/FIU Reporting**: Automated regulatory compliance and transaction logging\r\n\r\n### ⚡ Zero-Downtime Infrastructure\r\n- **File-Based Routing**: Automatic `/pages` to URL mapping with dynamic routes\r\n- **Enhanced HMR**: Session preservation during hot reloads\r\n- **Bun-Native Runtime**: 5ms startup with WebSocket orchestration\r\n\r\n### 🎨 Cultural Resonance\r\n- **33+ Web Components**: African-themed UI elements with cultural semiotics\r\n- **Procedural SVG Engine**: Fractal geometry for traditional patterns\r\n- **Mobile-First Design**: Optimized for African connectivity constraints\r\n- **Native UI Kit**: Shadcn-style Web Components like `af-ui-button`, `af-ui-card`, and `af-ui-input` for consistent app UI\r\n\r\n## 🚀 Quick Start\r\n\r\n### Create Autonomous Project\r\n\r\n```bash\r\n# Install globally via NPM\r\nnpm install -g @africode/core\r\n\r\n# Create new project\r\ncreate-africode my-app\r\ncd my-app\r\n\r\n# Install dependencies\r\nbun install\r\n\r\n# Start autonomous development server\r\nbun run dev\r\n```\r\n\r\n### Project Structure (Autonomous)\r\n\r\n```\r\nmy-app/\r\n├── src/\r\n│   ├── server.ts          # Autonomous server entry\r\n│   ├── pages/             # File-based routes\r\n│   │   ├── index.ts       # Home page\r\n│   │   └── api/           # API routes\r\n│   ├── components/        # Custom components\r\n│   └── core/              # Framework extensions\r\n├── public/                # Static assets\r\n├── package.json           # NPM configuration\r\n├── tsconfig.json          # TypeScript config\r\n└── catalog.json           # A2UI component manifest\r\n```\r\n\r\n### AI-Safe Development\r\n\r\nThe published package includes the agent guidance files so AI assistants can discover the framework rules when the package is installed. These files are bundled as [AGENTS.md](AGENTS.md) and [AGENT_INSTRUCTIONS.md](AGENT_INSTRUCTIONS.md).\r\n\r\n```typescript\r\n// pages/index.ts\r\nimport { html } from '@africode/core';\r\n\r\nexport default function Home() {\r\n  return html`\r\n    <af-app>\r\n      <af-navbar>\r\n        <h1 slot=\"brand\">My AfriCode App</h1>\r\n      </af-navbar>\r\n\r\n      <main>\r\n        <af-hero>\r\n          <h1>AI-Safe Fintech</h1>\r\n          <p>Built with cultural patterns</p>\r\n          <af-kente-pattern complexity=\"3\"></af-kente-pattern>\r\n        </af-hero>\r\n      </main>\r\n    </af-app>\r\n  `;\r\n}\r\n```\r\n\r\n## 🏗️ Architecture\r\n\r\n### Core Modules\r\n\r\n| Module | Purpose | Status |\r\n|--------|---------|--------|\r\n| `src/index.ts` | Main framework entry | ✅ Complete |\r\n| `core/a2ui-schema-manager.js` | AI component catalog | ✅ Enhanced |\r\n| `core/nida-cig-middleware.js` | Identity verification | ✅ VPN + Crypto |\r\n| `core/lipa-namba-journey.js` | Payment primitives | ✅ BoT Compliant |\r\n| `core/file-router.js` | File-based routing | ✅ Dynamic routes |\r\n| `core/enhanced-hmr.js` | Zero-downtime HMR | ✅ Session preservation |\r\n\r\n### Cloud Infrastructure\r\n\r\n#### AMD AI Cloud (Intelligence Layer)\r\n- **MI300X GPUs**: 192GB HBM3 for LLM inference\r\n- **$100 Credits**: 200 hours on RunPod community cloud\r\n- **AfriCode-Coder Model**: Fine-tuned for Tanzanian fintech law\r\n\r\n#### Alibaba Cloud (Asset Layer)\r\n- **Model Studio**: Qwen3-Max for complex reasoning\r\n- **Free Tier**: 1M tokens for initial rollout\r\n- **Batch Inference**: 50% cost reduction for production\r\n\r\n## 🔧 CLI Commands\r\n\r\n```bash\r\n# Development\r\nafricode dev              # Start dev server with HMR\r\nafricode build            # Production build\r\nafricode lint             # Code quality checks\r\n\r\n# AI Integration\r\nafricode generate a2ui    # Update component catalog\r\nafricode generate patterns # Regenerate cultural patterns\r\n\r\n# Fintech\r\nafricode migrate          # Run database migrations\r\nafricode audit            # Security and compliance audit\r\n```\r\n\r\n## 🎭 Ethnomathematical Patterns\r\n\r\nAfriCode v5.0.0 incorporates traditional African geometric principles:\r\n\r\n### Kente Weaving (Glide Reflection)\r\n```javascript\r\nimport { generateKente } from '@africode/core';\r\n\r\nconst pattern = generateKente({\r\n  baseColor: '#8B4513',\r\n  accentColor: '#DAA520',\r\n  complexity: 3\r\n});\r\n```\r\n\r\n### Ndebele Fractals (Recursive Geometry)\r\n```javascript\r\nconst ndebele = generateNdebele({\r\n  recursionDepth: 4,\r\n  symmetry: 'rotational',\r\n  colors: ['#FF6B6B', '#4ECDC4', '#45B7D1']\r\n});\r\n```\r\n\r\n## 🔒 Fintech Compliance\r\n\r\n### NIDA Identity Verification\r\n```typescript\r\nimport { NIDAClient } from '@africode/core';\r\n\r\nconst nida = new NIDAClient({\r\n  vpnEnabled: true,\r\n  endpoint: 'https://api.nida.go.tz/cig'\r\n});\r\n\r\nconst result = await nida.verifyNIN('12345678901234567890', 'PIN');\r\n```\r\n\r\n### TIPS Payment Processing\r\n```typescript\r\nimport { LipaNambaJourney } from '@africode/core';\r\n\r\nconst journey = new LipaNambaJourney();\r\nconst payment = await journey.executeFullJourney({\r\n  merchantId: 'MERCHANT_001',\r\n  customerPhone: '255712345678',\r\n  amount: 50000\r\n}, customerIdentity, confirmationData);\r\n```\r\n\r\n## 🌐 Pan-African Expansion\r\n\r\n### Phase 1: Tanzania Foundation\r\n- **TIPS Integration**: Real-time payment processing\r\n- **NIDA Compliance**: Identity verification for KYC\r\n- **Cultural Patterns**: Swahili language support\r\n\r\n### Phase 2: East African Corridor\r\n- **PAPSS Bridge**: Cross-border settlement\r\n- **Regional Hubs**: Nairobi, Kampala, Kigali\r\n- **Agri-Fintech**: Supply chain integration\r\n\r\n### Phase 3: West African Powerhouse\r\n- **NIBSS Integration**: Nigerian payment systems\r\n- **Kente Patterns**: Ghanaian cultural motifs\r\n- **Enterprise Adoption**: Large corporate clients\r\n\r\n## 🤝 Community & Incentives\r\n\r\n### AfriCode Pioneer Bounty Program\r\n- **Bug Fixes**: $50-200 for confirmed issues\r\n- **Features**: $300-1500 for new capabilities\r\n- **Performance**: $100-500 for optimizations\r\n- **Cultural Assets**: $50-300 for pattern designs\r\n\r\n### Developer Hubs\r\n- **Silicon Dar**: Dar es Salaam tech district\r\n- **iHub Nairobi**: East African innovation\r\n- **CcHUB Lagos**: West African powerhouse\r\n- **GDG Network**: Google Developer Groups across Africa\r\n\r\n## 📊 Performance Metrics\r\n\r\n- **Startup Time**: <5ms (Bun-native)\r\n- **Bundle Size**: <100KB (tree-shaken)\r\n- **Lighthouse Score**: 95+ (mobile-first)\r\n- **TIPS Transactions**: 490M+ annually supported\r\n- **NIDA Verifications**: Real-time with VPN security\r\n\r\n## 📚 Documentation\r\n\r\n- [Framework Guide](docs/FRAMEWORK.md)\r\n- [Component Catalog](catalog.json)\r\n- [API Reference](docs/API.md)\r\n- [Fintech Integration](docs/FINTECH.md)\r\n- [Cultural Patterns](docs/PATTERNS.md)\r\n\r\n## 🤝 Contributing\r\n\r\nWe welcome contributions that align with our Pan-African vision:\r\n\r\n1. Fork the repository\r\n2. Create a feature branch\r\n3. Add tests for new functionality\r\n4. Ensure AI-safety compliance\r\n5. Submit a pull request\r\n\r\n## 📄 License\r\n\r\n**Dual License:**\r\n- **Open Source**: AGPL v3.0 for community projects\r\n- **Commercial**: Available for enterprise deployments\r\n\r\n## 🌟 Acknowledgments\r\n\r\nBuilt for the African developer community with support from:\r\n- **Bank of Tanzania** (TIPS infrastructure)\r\n- **National Identification Authority** (NIDA systems)\r\n- **AMD AI Cloud** ($100 credits for AI development)\r\n- **Alibaba Cloud** (Model Studio free tier)\r\n- **African Export-Import Bank** (PAPSS coordination)\r\n\r\n---\r\n\r\n**\"Designed for Tanzanians by Tanzanians, Built for Africans by Africans\"**\r\n\r\n🇹🇿🇰🇪🇺🇬🇷🇼🇳🇬🇬🇭🇿🇦🇲🇦\r\n\r\n### Local Development (Framework Contributors)\r\n\r\nIf you are developing the framework itself:\r\n\r\n1. Clone and navigate to the framework directory\r\n2. Register the link: `bun link`\r\n3. Use in another project: `bun link africode`\r\n4. Run validation: `bun scripts/validate-fresh-install.js`\r\n\r\n### Usage (SDK)\r\n\r\nImport the core SDK to generate patterns, use the state engine, or handle routing:\r\n\r\n```javascript\r\nimport { patterns, store, components } from 'africode';\r\nimport { FileSystemRouter } from 'africode/core/router.js';\r\n\r\n// Generate a Maasai Shuka pattern\r\nconst shukaPattern = patterns.generateShuka();\r\ndocument.body.style.backgroundImage = `url(\"${shukaPattern}\")`;\r\n\r\n// Use Global State\r\nstore.ui.theme = 'tanzania';\r\nstore.ui.theme; // 'tanzania' - triggers effects on change\r\n\r\n// Use File-Based Routing\r\nconst router = new FileSystemRouter('./pages');\r\nconst route = await router.matchRoute('/users/123');\r\n// { page, params: { id: '123' }, path: '/users/[id]' }\r\n```\r\n\r\n### Usage (Authentication)\r\n\r\nAfriCode includes built-in session-based authentication:\r\n\r\n```javascript\r\n// API endpoints (automatically available)\r\nPOST / api / auth / register; // { email, username, password, fullname }\r\nPOST / api / auth / login; // { email/username, password }\r\nPOST / api / auth / logout; // Clears session\r\nGET / api / auth / me; // Current user (requires session)\r\nPOST / api / auth / refresh; // Extend session expiry\r\n```\r\n\r\nPasswords are hashed with **Argon2id** (built into Bun), sessions use **HttpOnly** cookies with **SameSite=Strict** protection.\r\n\r\n### Usage (UI Components)\r\n\r\nSimply import the components to register them as Custom Elements:\r\n\r\n```javascript\r\nimport 'africode/components';\r\n```\r\n\r\nThen use them in your HTML:\r\n\r\n```html\r\n<af-navbar theme=\"tanzania\" logo=\"My App\"></af-navbar>\r\n\r\n<af-kanga-card proverb=\"Haraka haraka haina baraka.\">\r\n  <h3>Project Title</h3>\r\n  <p>Content goes here...</p>\r\n</af-kanga-card>\r\n\r\n<af-button onclick=\"handleClick()\">Click Me</af-button>\r\n```\r\n\r\n### Native AfriCode UI Kit\r\n\r\nAfriCode now includes a native UI kit with shadcn-inspired Web Components for rapid interface design. The Tailwind starter demonstrates the new UI kit using components like `af-ui-button`, `af-ui-card`, `af-ui-input`, `af-ui-badge`, and `af-ui-switch` in a Shadow DOM-friendly workflow.\r\n\r\nAll `af-`, `af-ui-`, and `af-dashboard-` components are distributed together in the same `@africode/core` package, so they share theme, styles, registry, and versioning.\r\n\r\nThe library is optimized for consistent spacing, elevation, and interactive states across theme-aware apps.\r\n\r\nUse the Tailwind starter template for a ready-made UI experience:\r\n\r\n```bash\r\ncreate-africode my-app --template starter-tailwind\r\ncd my-app\r\nbun install\r\nbun run dev\r\n```\r\n\r\nExample usage:\r\n\r\n```html\r\n<af-ui-card variant=\"outlined\" clickable>\r\n  <h3>Actionable Panel</h3>\r\n  <p>Build data-driven experiences with native AfriCode UI components.</p>\r\n  <af-ui-badge variant=\"success\" pill>Ready</af-ui-badge>\r\n</af-ui-card>\r\n\r\n<af-ui-input label=\"Email\" placeholder=\"you@example.com\"></af-ui-input>\r\n<af-ui-switch checked></af-ui-switch>\r\n<af-ui-button variant=\"primary\">Submit</af-ui-button>\r\n```\r\n\r\n## ⚙️ Development\r\n\r\n### Hot Module Replacement (HMR)\r\n\r\nDuring `bun run dev`, any file changes trigger automatic browser refresh. This provides **5-10x faster iteration** compared to manual reloads:\r\n\r\n```bash\r\nbun run dev\r\n# Edit a file → browser updates instantly\r\n```\r\n\r\nHMR is smart about what to reload:\r\n\r\n- `.js` files: Full page reload\r\n- `.css` files: Incremental style update\r\n- `.html` files: DOM refresh\r\n\r\n### File-Based Routing\r\n\r\nCreate files in `pages/` and they automatically become routes:\r\n\r\n```\r\npages/\r\n  index.js          → /\r\n  about.js          → /about\r\n  users/\r\n    [id].js         → /users/123\r\n  api/\r\n    users.js        → POST /api/users\r\n    [...rest].js    → Catch-all: /api/foo/bar/baz\r\n```\r\n\r\nRoute parameters are automatically extracted: `params.id`, `params.rest`, etc.\r\n\r\n## 🏗️ Architecture\r\n\r\n```\r\ncore/\r\n  ├── state.js          → Proxy-based reactive state management\r\n  ├── patterns.js       → Cultural SVG generators (Kente, Shuka, Ndebele, Maasai)\r\n  ├── html.js           → XSS-safe tagged template literals\r\n  ├── router.js         → File-based routing with dynamic routes\r\n  ├── db.js             → SQLite ORM with migrations and transactions\r\n  ├── auth.js           → Argon2id password hashing and sessions\r\n  ├── a2ui.js           → Generative AI interface protocol (v5.0.0)\r\n  ├── compliance.js     → Tanzanian fintech regulations (v5.0.0)\r\n  ├── bun-runtime.js    → High-performance server engine (v5.0.0)\r\n  ├── hydration.js      → Component system and lifecycle\r\n  └── server/\r\n      ├── auth-endpoints.js    → Authentication API endpoints\r\n      ├── router.js            → Request routing and handler delegation\r\n      └── render.js            → Server-side rendering with HTML injection\r\n\r\ncomponents/\r\n  ├── base.js           → Web Component base class\r\n  ├── 33+ UI components → African-themed elements (buttons, cards, modals)\r\n  └── pattern-showcase.js → Cultural pattern gallery\r\n\r\npatterns/\r\n  ├── 8 Regional Generators → Procedurally generated SVG patterns\r\n  └── Cultural design system with African semiotics\r\n```\r\n\r\n## 📊 Test Coverage\r\n\r\nAll core systems have comprehensive test coverage:\r\n\r\n- ✅ **HTML Templates** (`html.test.js`) - Nested rendering, escaping, arrays, XSS prevention\r\n- ✅ **File-Based Routing** (`router.test.js`) - Dynamic routes, catch-all, parameter extraction\r\n- ✅ **State Management** (`state.test.js`, `store.test.js`) - Reactivity, effects, signals, deep updates\r\n- ✅ **HMR System** (`hmr.test.js`) - WebSocket server, client reconnection, file watching\r\n- ✅ **Authentication** (`auth.test.js`) - Registration, login, session management, Argon2id hashing\r\n- ✅ **Validation** (`validation.test.js`) - Zod schemas, email, phone, URL, AfriFieldBuilder\r\n- ✅ **Advanced ORM** (`orm-advanced.test.js`) - QueryBuilder, transactions, migrations, WAL mode\r\n- ✅ **WebSocket** (`websocket.test.js`) - Connections, rooms, presence, message queueing, heartbeats\r\n- ✅ **Middleware** (`middleware.test.js`) - CORS, logging, rate limiting, auth, security headers\r\n- ✅ **Security** (`security.test.js`) - CSRF, injection prevention, token validation\r\n- ✅ **Plugin System** (`plugins.test.js`) - Hook execution, timeouts, isolation, safe/strict modes\r\n- ✅ **Cultural Patterns** (`patterns.test.js`) - SVG output, Kente, Ndebele, Kuba, Masai, Zulu\r\n- ✅ **Accessibility** (`a11y.test.js`) - ARIA roles, keyboard navigation, focus management\r\n- ✅ **Framework Core** (`framework.test.js`) - SDK init, config, component lifecycle\r\n\r\n**Total: 389 passing tests** with zero regressions\r\n\r\n## 📜 Licensing\r\n\r\nAfriCode is **Dual Licensed**:\r\n\r\n1.  **AGPL v3**: For open-source projects. You must open-source your code if you use AfriCode.\r\n2.  **Commercial**: For proprietary projects. Contact us for a commercial license to build closed-source apps.\r\n\r\n## 🤝 Contribution\r\n\r\nWe welcome contributions! Please see `CONTRIBUTING.md` for details.\r\n\r\n---\r\n\r\n_Built with ❤️ by the AfriCode Team_\r\n","readmeFilename":"README.md"}