diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index d731bfb..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2026 YuuKi-OS
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/app/page.tsx b/app/page.tsx
index 1fefb81..b9fc744 100644
--- a/app/page.tsx
+++ b/app/page.tsx
@@ -1,43 +1,168 @@
+"use client"
+
+import React from "react"
import { Navbar } from "@/components/yuuki/navbar"
import { Hero } from "@/components/yuuki/hero"
import { ModelSection } from "@/components/yuuki/model-section"
import { EcosystemSection } from "@/components/yuuki/ecosystem-section"
-import { DemoSection } from "@/components/yuuki/demo-section"
import { StatsSection } from "@/components/yuuki/stats-section"
import { CreatorSection } from "@/components/yuuki/creator-section"
-import { DonateSection } from "@/components/yuuki/donate-section"
import { Footer } from "@/components/yuuki/footer"
+function Divider() {
+ return (
+
+ )
+}
+
+class ErrorBoundary extends React.Component<
+ { name: string; children: React.ReactNode },
+ { error: Error | null }
+> {
+ constructor(props: { name: string; children: React.ReactNode }) {
+ super(props)
+ this.state = { error: null }
+ }
+ static getDerivedStateFromError(error: Error) {
+ return { error }
+ }
+ componentDidCatch(error: Error) {
+ console.log(`[v0] ErrorBoundary caught in ${this.props.name}:`, error.message)
+ }
+ render() {
+ if (this.state.error) {
+ return (
+
+
Error in {this.props.name}: {this.state.error.message}
+
+ )
+ }
+ return this.props.children
+ }
+}
+
export default function Page() {
+ console.log("[v0] Page component rendering")
return (
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {/* Demo Section */}
+
+
+
+
+
+ Live Demo
+
+
+ Try Yuuki Now
+
+
+ Generate code directly in your browser. Click below to open the Yuuki Space
+ on HuggingFace. No setup required.
+
+
+
+
+
+
Interactive Playground
+
+ The Yuuki Space runs the Yuuki-best model on HuggingFace infrastructure.
+ Generate code in Agda, C, Python, Assembly, and more.
+
+
+ Launch Yuuki Space
+ {">"}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {/* Donate Section */}
+
+
+
+
+
+
+
+
+ Support the Project
+
+
+ Yuuki is built with zero budget by a single person. Your support helps keep the
+ project alive and growing -- better hardware, more training time, and new features.
+
+
+
+
+
+ Even a star on GitHub helps. Every contribution matters.
+
+
+
+
+
+
+
+
+
+
+
)
}
diff --git a/components/yuuki/creator-section.tsx b/components/yuuki/creator-section.tsx
index dca9def..0d8e26f 100644
--- a/components/yuuki/creator-section.tsx
+++ b/components/yuuki/creator-section.tsx
@@ -28,10 +28,9 @@ export function CreatorSection() {
diff --git a/components/yuuki/demo-section.tsx b/components/yuuki/demo-section.tsx
deleted file mode 100644
index 36006b4..0000000
--- a/components/yuuki/demo-section.tsx
+++ /dev/null
@@ -1,75 +0,0 @@
-"use client"
-
-import { useEffect, useRef, useState } from "react"
-
-export function DemoSection() {
- const containerRef = useRef
(null)
- const [loaded, setLoaded] = useState(false)
-
- useEffect(() => {
- if (loaded) return
- // Load Gradio script dynamically
- const script = document.createElement("script")
- script.type = "module"
- script.src = "https://gradio.s3-us-west-2.amazonaws.com/5.9.1/gradio.js"
- script.onload = () => {
- if (!containerRef.current) return
- // Create the gradio-app custom element after the script loads
- const gradioApp = document.createElement("gradio-app")
- gradioApp.setAttribute("src", "https://opceanai-yuuki.hf.space")
- gradioApp.style.minHeight = "600px"
- gradioApp.style.width = "100%"
- containerRef.current.appendChild(gradioApp)
- }
- document.head.appendChild(script)
- setLoaded(true)
- }, [loaded])
-
- return (
-
-
-
-
- Live Demo
-
-
- Try Yuuki Now
-
-
- Generate code directly in your browser. This Space runs the Yuuki-best model
- on HuggingFace infrastructure. No setup required.
-
-
-
-
- {/* Window chrome */}
-
-
- {/* Gradio embed */}
-
-
-
-
- The Space may take a moment to load if it has been idle. Powered by HuggingFace Spaces.
-
-
-
- )
-}
diff --git a/components/yuuki/donate-section.tsx b/components/yuuki/donate-section.tsx
deleted file mode 100644
index ab9eefd..0000000
--- a/components/yuuki/donate-section.tsx
+++ /dev/null
@@ -1,68 +0,0 @@
-import { Heart } from "lucide-react"
-
-export function DonateSection() {
- return (
-
-
-
-
- {/* Background decoration */}
-
-
-
-
-
-
-
-
- Support the Project
-
-
- Yuuki is built with zero budget by a single person. Your support helps keep the
- project alive and growing -- better hardware, more training time, and new features.
-
-
- {/* GitHub Sponsors embed */}
-
-
-
-
-
- Even a star on GitHub helps. Every contribution matters.
-
-
-
-
-
-
- )
-}
diff --git a/public/images/agua-avatar.jpg b/public/images/agua-avatar.jpg
new file mode 100644
index 0000000..1c7eacf
Binary files /dev/null and b/public/images/agua-avatar.jpg differ
diff --git a/yuuki-astro-site.zip b/yuuki-astro-site.zip
deleted file mode 100755
index 37a193f..0000000
Binary files a/yuuki-astro-site.zip and /dev/null differ