Files
nibiru-framework.com/application/view/mockup/template/contacts.html
stephan 48c839d927 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>
2026-05-08 15:22:18 +02:00

441 lines
14 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Page title -->
<title>VSDocs - most advanced documentation template on ThemeForest</title>
<!-- Page description -->
<meta name="description" content="">
<!-- Meta -->
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Favicon -->
<link rel="icon" type="image/png" href="img/favicons/favicon-16x16.png" sizes="16x16">
<link rel="icon" type="image/png" href="img/favicons/favicon-32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="img/favicons/favicon-96x96.png" sizes="96x96">
<link rel="apple-touch-icon" sizes="57x57" href="img/favicons/apple-touch-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="img/favicons/apple-touch-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="img/favicons/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="img/favicons/apple-touch-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="img/favicons/apple-touch-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="img/favicons/apple-touch-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="img/favicons/apple-touch-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="img/favicons/apple-touch-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="img/favicons/apple-touch-icon-180x180.png">
<!-- Include StyleSheets -->
<link rel="stylesheet" href="css/style.min.css">
<!-- <link rel="stylesheet" href="css/custom.css"> -->
<script src="js/modernizr.js"></script>
</head>
<body class="">
<!--[if lt IE 8]>
<p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
<![endif]-->
<!-- Preloader: uncomment this if you want to show a smooth preloader while the page is loading. Don't forget to add the 'js-preload-me' class on the <body> tag. -->
<!-- <div class="preloader js-preloader"><div class="preloader-animation"></div></div>
-->
<!-- End of Preloader -->
<div class="page js-page ">
<!-- Header -->
<div class="header header-over large">
<div class="container">
<div class="row">
<div class="col-md-3 col-sm-6 col-xs-6">
<!-- Logo Image -->
<a href="index.html" class="logo-image logo-animated">
<img src="img/logos/logo.png" alt="logo">
</a>
<!-- End of Logo Image -->
</div>
<div class="col-md-9 col-sm-6 col-xs-6">
<!-- Menu -->
<nav class="right helper">
<ul class="menu sf-menu js-menu">
<li>
<a href="index.html">Home
<span class="menu-label">NEW</span>
</a>
<ul>
<li>
<a href="#">One Page Docs</a>
<ul>
<li>
<a href="home-one-page.html">Static Header</a>
</li>
<li>
<a href="home-one-page-header-fixed.html">Sticky Header</a>
</li>
</ul>
</li>
<li>
<a href="#">Menu</a>
<ul>
<li>
<a href="index-2.html">Left - Off Canvas</a>
</li>
<li>
<a href="index-3.html">Right - Off Canvas</a>
</li>
</ul>
</li>
<li>
<a href="#">Static</a>
<ul>
<li>
<a href="home-subscribe.html">Subscribe</a>
</li>
<li>
<a href="home-web.html">Web App</a>
</li>
<li>
<a href="home-mobile-app.html">Mobile App</a>
</li>
<li>
<a href="home-soft.html">Software</a>
</li>
</ul>
</li>
<li>
<a href="#">Video</a>
<ul>
<li>
<a href="index-5.html">Background</a>
</li>
<li>
<a href="home-video-trigger.html">Trigger Simple</a>
</li>
<li>
<a href="home-web-video-trigger.html">Trigger Web</a>
</li>
<li>
<a href="home-app-video-trigger.html">Trigger App</a>
</li>
<li>
<a href="home-soft-video-trigger.html">Trigger Soft</a>
</li>
</ul>
</li>
<li>
<a href="index-4.html">Text Rotator</a>
</li>
<li>
<a href="home-with-preloader.html">With Preloader</a>
</li>
</ul>
</li>
<li>
<a href="#">Pages</a>
<ul>
<li>
<a href="panels.html">Panels</a>
</li>
<li>
<a href="#">Blog</a>
<ul>
<li>
<a href="blog-grid.html">Blog Grid</a>
</li>
<li>
<a href="blog-list.html">Blog List</a>
</li>
<li>
<a href="article.html">Article</a>
</li>
</ul>
</li>
<li>
<a href="faq.html">Faq</a>
</li>
<li>
<a href="notification.html">Notification</a>
</li>
<li>
<a href="tutorial.html">Tutorial</a>
</li>
<li>
<a href="login.html">Login</a>
</li>
<li>
<a href="register.html">Register</a>
</li>
<li>
<a href="404.html">404 Error</a>
</li>
</ul>
</li>
<li>
<a href="#">Elements</a>
<ul>
<li>
<a href="buttons.html">Buttons</a>
</li>
<li>
<a href="boxes.html">Boxes</a>
</li>
<li>
<a href="code.html">Code</a>
</li>
<li>
<a href="visual-guide.html">Visual guide</a>
</li>
<li>
<a href="notes.html">Notes</a>
</li>
<li>
<a href="files.html">File tree</a>
</li>
<li>
<a href="media.html">Media</a>
</li>
<li>
<a href="book.html">Book</a>
</li>
<li>
<a href="steps.html">Steps & Tabs</a>
</li>
<li>
<a href="misc.html">Misc</a>
</li>
</ul>
</li>
<li>
<a href="#">Layouts</a>
<ul>
<li>
<a href="views.html">Views without sidebar</a>
</li>
<li>
<a href="views-left.html">Views left sidebar</a>
</li>
<li>
<a href="views-right.html">Views right sidebar</a>
</li>
<li>
<a href="#">Full left sidebar</a>
<ul>
<li>
<a href="views-left-full.html">Regular</a>
</li>
<li>
<a href="views-left-full-compact.html">Compact</a>
</li>
</ul>
</li>
<li>
<a href="#">Full right sidebar</a>
<ul>
<li>
<a href="views-right-full.html">Regular</a>
</li>
<li>
<a href="views-right-full-compact.html">Compact</a>
</li>
</ul>
</li>
</ul>
</li>
<li>
<a href="changelog.html">Changelog</a>
</li>
<li>
<a href="contacts.html">Contacts</a>
</li>
</ul>
</nav>
<!-- End of Menu -->
</div>
</div>
</div>
</div>
<!-- End of Header -->
<!-- Header Back -->
<div class="header-back header-back-simple header-back-small">
<div class="header-back-container">
<div class="container">
<div class="row">
<div class="col-md-12">
<!-- Page Info -->
<div class="page-info page-info-simple">
<h1 class="page-title">Contacts</h1>
<h2 class="page-description">The contact page is much more important than many give it credit. So, its extremely important to make sure your contact page delivers in the best way possible.</h2>
</div>
<!-- End Page Info -->
</div>
</div>
</div>
</div>
</div>
<!-- End of Header Back -->
<div id="content">
<div class="container">
<div class="row">
<div class="col-md-7">
<!-- Contacts -->
<div class="contacts">
<h3 class="contacts-title"> Still have questions? Leave us a message. </h3>
<!-- Success Modal -->
<div class="contacts-success js-contacts-success">
<i class="pe-7s-check"></i>Your message was sent successfully.
<br>Thank you!</div>
<!-- End of Success Modal -->
<form action="php/contact.php" id="js-contact-form">
<ul class="contacts-inputs">
<li class="contacts-item">
<label for="full-name" class="contacts-label">Full Name</label>
<!-- This input is required -->
<input type="text" name="full-name" id="full-name" class="contacts-input form-control" data-validation="required"> </li>
<li class="contacts-item">
<label for="email" class="contacts-label">Email</label>
<!-- This input should be filled with a valid email and it's required -->
<input type="text" name="email" id="email" class="contacts-input form-control" data-validation="required email"> </li>
<li class="contacts-item">
<label for="company" class="contacts-label">Company</label>
<!-- This input if optional -->
<input type="text" name="company" id="company" class="contacts-input form-control"> </li>
<li class="contacts-item">
<label for="website" class="contacts-label">Website</label>
<!-- This input should be filled with a valid URL and it's optional -->
<input type="text" name="website" id="website" class="contacts-input form-control" data-validation="url" data-validation-optional="true"> </li>
<li class="contacts-item">
<label for="country" class="contacts-label">Country</label>
<!-- This input is optional -->
<input type="text" name="country" id="country" class="contacts-input form-control"> </li>
<li class="contacts-item">
<label for="message" class="contacts-label">Message</label>
<!-- This input is required -->
<textarea id="message" name="message" class="contacts-input form-control" data-validation="required"></textarea>
</li>
</ul>
<button class="button blue full">Send Message</button>
</form>
</div>
<!-- End of Contacts -->
</div>
<div class="col-md-5">
<!-- Contacts info -->
<div class="contacts-info">
<h4 class="contacts-info-title"> Development team </h4>
<p class="contacts-info-description"> We are available 24/24 to help you. </p>
<div class="contacts-info-data">
<a href="#">support@vsdocs.com</a>
</div>
<h4 class="contacts-info-title"> Sales team </h4>
<p class="contacts-info-description"> Want to become a partner? Great. </p>
<div class="contacts-info-data">
<a href="#">sales@vsdocs.com</a>
</div>
<h4 class="contacts-info-title"> Press </h4>
<p class="contacts-info-description"> Discover more about VSDocs </p>
<div class="contacts-info-data">
<a href="#">press@vsdocs.com</a>
</div>
<h4 class="contacts-info-title"> Say Hi </h4>
<p class="contacts-info-description"> Let's drink a coffee together. </p>
<div class="contacts-info-data">
<a href="#">hi@vsdocs.com</a>
</div>
</div>
<!-- End of Contacts info -->
</div>
</div>
</div>
</div>
<!-- Footer -->
<footer class="js-footer-is-fixed">
<!-- Footer Default -->
<div class="footer">
<div class="container">
<div class="row">
<div class="col-md-3 col-sm-3 col-xs-12">
<div class="footer-logo-wrapper">
<!-- Logo Image -->
<a href="index.html" class="logo-image ">
<img src="img/logos/logo.png" alt="logo">
</a>
<!-- End of Logo Image -->
<!-- Slogan -->
<p class="slogan"> Learn.
<br>Create.
<br>Impress. </p>
<!-- End of Slogan -->
</div>
</div>
<div class="col-md-9 col-sm-9 col-xs-12">
<div class="footer-wrapper">
<!-- Scroll top -->
<span class="scroll-top js-scroll-top">
<i class="fa fa-angle-up"></i>
</span>
<!-- End of Scroll top -->
<!-- Version -->
<div class="docs-version js-docs-version">
<span class="docs-current-version js-docs-current-version">v3.5</span>
<ul class="js-docs-version-list">
<li>
<a href="#">1.0</a>
</li>
<li>
<a href="#">1.5</a>
</li>
<li>
<a href="#">2.5</a>
</li>
<li>
<a href="#">3.0</a>
</li>
<li>
<a href="#">3.1</a>
</li>
</ul>
</div>
<!-- End of Version -->
<!-- Footer Menu -->
<ul class="footer-menu helper right">
<li>
<a href="#"> About us </a>
</li>
<li>
<a href="#"> Privacy Policy </a>
</li>
<li>
<a href="#"> Terms & Condotions </a>
</li>
<li>
<a href="#"> My account </a>
</li>
<li>
<a href="#"> Support service </a>
</li>
</ul>
<!-- End of Footer Menu -->
<!-- Copyright -->
<p class="copyright helper right">
<a href="http://vsart.me">VSArt</a>, all rights reserved. 2016 &copy; </p>
<!-- End of Copyright -->
</div>
</div>
</div>
</div>
</div>
<!-- End of Footer Default -->
</footer>
<!-- End of Footer -->
</div>
<script src="js/all.js"></script>
<script src="js/custom.js"></script>
<!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->
<!--
<script>
(function(b,o,i,l,e,r){b.GoogleAnalyticsObject=l;b[l]||(b[l]=
function(){(b[l].q=b[l].q||[]).push(arguments)});b[l].l=+new Date;
e=o.createElement(i);r=o.getElementsByTagName(i)[0];
e.src='//www.google-analytics.com/analytics.js';
r.parentNode.insertBefore(e,r)}(window,document,'script','ga'));
ga('create','UA-XXXXX-X','auto');ga('send','pageview');
</script>
-->
</body>
</html>