Initial public push: docs cosmos v4 + AI module + framework groundwork
This is the snapshot the production landing site (nibiru-framework.com) is deployed from. Brings together the recent splash + docs migration to the v4 "Cosmos" design system, the new in-framework AI module, and the framework groundwork that backs the framework-reference extraction. What lands: - docs/: Astro + Starlight site with the v4 dark cosmic palette, GalaxyHero canvas constellation, Mission Control chat (wired to /api/oracle → api.neuronetz.ai via providers.mjs Ollama), 5-panel MMVC stage (Model · AI · Module · Controller · View), translated EN/DE/JA/ES/FR content, PWA + sitemap + llms.txt + Umami analytics. - docs/design-system/: canonical mockup bundle (source/index-v2.html for splash, source/docs-system.html + preview/ for docs, SPEC.md, tokens). - docs/scripts/extraction/framework-reference-v2.md: deep framework reference (~1.6k lines, file:line citations, every public factory and idiom — basis for the LoRA training corpus. - application/module/ai/: AI module with chat / embed / RAG / agent plugins, plus pdoQuery / httpGet / fileRead tools and Modelfile + smoke-test in training/. - application/module/users/: user / ACL / form-factory traits used as the reference plugin pattern for the framework docs. - application/settings/config/database/: schema + seed migrations including the AI module tables (200–203). - Form factory + autogenerator changes the framework-reference-v2 covers. Production secrets stay out: docs/.env, settings.production.ini and ai.production.ini are all gitignored (.example files are in tree). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
BIN
docs/public/img/apple-touch-icon.png
Normal file
|
After Width: | Height: | Size: 9.3 KiB |
BIN
docs/public/img/architecture-lotus.png
Normal file
|
After Width: | Height: | Size: 2.2 MiB |
BIN
docs/public/img/hero-backdrop.png
Normal file
|
After Width: | Height: | Size: 1.9 MiB |
91
docs/public/img/lifecycle.svg
Normal file
@@ -0,0 +1,91 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 720 760" role="img" aria-label="Request lifecycle: Browser → index.php → framework.php → Dispatcher → Router/Modules/Autoloader → applicationController.php (navigationAction → action → pageAction) → Smarty render.">
|
||||
<defs>
|
||||
<linearGradient id="lc-box" x1="0" y1="0" x2="0" y2="1">
|
||||
<stop offset="0%" stop-color="#faf7f0"/>
|
||||
<stop offset="100%" stop-color="#ece6f3"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="lc-box-strong" x1="0" y1="0" x2="0" y2="1">
|
||||
<stop offset="0%" stop-color="#ece6f3"/>
|
||||
<stop offset="100%" stop-color="#ddd3eb"/>
|
||||
</linearGradient>
|
||||
<marker id="lc-arrow" viewBox="0 0 12 12" refX="10" refY="6" markerWidth="9" markerHeight="9" orient="auto-start-reverse">
|
||||
<path d="M0 0 L12 6 L0 12 Z" fill="#7c70ab"/>
|
||||
</marker>
|
||||
<filter id="lc-shadow" x="-10%" y="-10%" width="120%" height="120%">
|
||||
<feDropShadow dx="0" dy="2" stdDeviation="3" flood-color="#5e548c" flood-opacity="0.18"/>
|
||||
</filter>
|
||||
</defs>
|
||||
|
||||
<g fill="none" stroke="#7c70ab" stroke-width="1.6" marker-end="url(#lc-arrow)">
|
||||
<path d="M360 70 L360 100"/>
|
||||
<path d="M360 160 L360 192"/>
|
||||
<path d="M360 252 L360 284"/>
|
||||
<path d="M360 344 L360 360 L150 360 L150 388"/>
|
||||
<path d="M360 360 L360 388"/>
|
||||
<path d="M360 360 L570 360 L570 388"/>
|
||||
<path d="M360 448 L360 488"/>
|
||||
<path d="M360 638 L360 670"/>
|
||||
</g>
|
||||
|
||||
<g font-family="'JetBrains Mono', monospace" font-size="11" fill="#847b94">
|
||||
<text x="370" y="86">HTTP</text>
|
||||
<text x="370" y="178">require</text>
|
||||
<text x="370" y="270">boots framework</text>
|
||||
<text x="370" y="660">View::assign(…)</text>
|
||||
</g>
|
||||
|
||||
<g font-family="'Bricolage Grotesque','Inter',sans-serif" font-weight="600" font-size="15" fill="#1f1b2e">
|
||||
<g filter="url(#lc-shadow)">
|
||||
<rect x="290" y="20" width="140" height="50" rx="4" fill="url(#lc-box)" stroke="#b6adcd"/>
|
||||
<text x="360" y="51" text-anchor="middle">Browser</text>
|
||||
</g>
|
||||
<g filter="url(#lc-shadow)">
|
||||
<rect x="290" y="110" width="140" height="50" rx="4" fill="url(#lc-box)" stroke="#b6adcd"/>
|
||||
<text x="360" y="141" text-anchor="middle" font-family="'JetBrains Mono',monospace">index.php</text>
|
||||
</g>
|
||||
<g filter="url(#lc-shadow)">
|
||||
<rect x="270" y="202" width="180" height="50" rx="4" fill="url(#lc-box)" stroke="#b6adcd"/>
|
||||
<text x="360" y="233" text-anchor="middle" font-family="'JetBrains Mono',monospace">core/framework.php</text>
|
||||
</g>
|
||||
<g filter="url(#lc-shadow)">
|
||||
<rect x="280" y="294" width="160" height="50" rx="4" fill="url(#lc-box-strong)" stroke="#7c70ab"/>
|
||||
<text x="360" y="319" text-anchor="middle">Dispatcher</text>
|
||||
<text x="360" y="335" text-anchor="middle" font-family="'JetBrains Mono',monospace" font-weight="400" font-size="11" fill="#5e548c">::run()</text>
|
||||
</g>
|
||||
<g filter="url(#lc-shadow)">
|
||||
<rect x="90" y="388" width="120" height="60" rx="4" fill="url(#lc-box)" stroke="#b6adcd"/>
|
||||
<text x="150" y="415" text-anchor="middle">Router</text>
|
||||
<text x="150" y="432" text-anchor="middle" font-family="'JetBrains Mono',monospace" font-weight="400" font-size="11" fill="#5e548c">::route()</text>
|
||||
</g>
|
||||
<g filter="url(#lc-shadow)">
|
||||
<rect x="300" y="388" width="120" height="60" rx="4" fill="url(#lc-box)" stroke="#b6adcd"/>
|
||||
<text x="360" y="415" text-anchor="middle">Modules</text>
|
||||
<text x="360" y="432" text-anchor="middle" font-family="'JetBrains Mono',monospace" font-weight="400" font-size="11" fill="#5e548c">Registry</text>
|
||||
</g>
|
||||
<g filter="url(#lc-shadow)">
|
||||
<rect x="510" y="388" width="120" height="60" rx="4" fill="url(#lc-box)" stroke="#b6adcd"/>
|
||||
<text x="570" y="415" text-anchor="middle">Autoloader</text>
|
||||
<text x="570" y="432" text-anchor="middle" font-family="'JetBrains Mono',monospace" font-weight="400" font-size="11" fill="#5e548c">models + modules</text>
|
||||
</g>
|
||||
<g filter="url(#lc-shadow)">
|
||||
<rect x="200" y="488" width="320" height="150" rx="4" fill="url(#lc-box-strong)" stroke="#7c70ab"/>
|
||||
<text x="360" y="513" text-anchor="middle" font-family="'JetBrains Mono',monospace">applicationController.php</text>
|
||||
<line x1="220" y1="525" x2="500" y2="525" stroke="#b6adcd" stroke-width="1"/>
|
||||
<text x="360" y="550" text-anchor="middle" font-family="'JetBrains Mono',monospace" font-weight="400" font-size="13" fill="#4a4258">navigationAction()</text>
|
||||
<text x="360" y="580" text-anchor="middle" font-family="'JetBrains Mono',monospace" font-weight="400" font-size="13" fill="#4a4258"><_action>Action()</text>
|
||||
<text x="360" y="610" text-anchor="middle" font-family="'JetBrains Mono',monospace" font-weight="400" font-size="13" fill="#4a4258">pageAction()</text>
|
||||
</g>
|
||||
<g filter="url(#lc-shadow)">
|
||||
<rect x="270" y="680" width="180" height="60" rx="4" fill="url(#lc-box)" stroke="#7db7dc"/>
|
||||
<text x="360" y="708" text-anchor="middle">Smarty</text>
|
||||
<text x="360" y="725" text-anchor="middle" font-family="'JetBrains Mono',monospace" font-weight="400" font-size="11" fill="#4a8fb7">templates/<ctrl>.tpl + shared/*</text>
|
||||
</g>
|
||||
</g>
|
||||
|
||||
<g font-family="'Bricolage Grotesque',sans-serif" font-size="12" fill="#4a4258">
|
||||
<line x1="450" y1="227" x2="490" y2="227" stroke="#7c70ab" stroke-width="1.4" marker-end="url(#lc-arrow)" stroke-dasharray="3 3"/>
|
||||
<text x="498" y="220">boots Config, Router, Engine,</text>
|
||||
<text x="498" y="237">Smarty, all 28 form types,</text>
|
||||
<text x="498" y="254">DB drivers, Auth.</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.5 KiB |
BIN
docs/public/img/lotus-divider.png
Normal file
|
After Width: | Height: | Size: 1.7 MiB |
BIN
docs/public/img/modules-anatomy.png
Normal file
|
After Width: | Height: | Size: 2.0 MiB |
BIN
docs/public/img/nibiru-logo.png
Normal file
|
After Width: | Height: | Size: 148 KiB |
BIN
docs/public/img/nibiru-lotus.png
Normal file
|
After Width: | Height: | Size: 151 KiB |
BIN
docs/public/img/nibiru-mark-bw.png
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
docs/public/img/nibiru-mark.png
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
docs/public/img/nibiru-square.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
docs/public/img/pwa-192.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
docs/public/img/pwa-512-maskable.png
Normal file
|
After Width: | Height: | Size: 42 KiB |
BIN
docs/public/img/pwa-512.png
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
docs/public/img/showcase-bowatech.png
Normal file
|
After Width: | Height: | Size: 1.9 MiB |
BIN
docs/public/img/showcase-thorax.png
Normal file
|
After Width: | Height: | Size: 1.9 MiB |
BIN
docs/public/img/showcase-tpms.png
Normal file
|
After Width: | Height: | Size: 1.8 MiB |