mirror of
https://github.com/DayuanJiang/next-ai-draw-io.git
synced 2026-01-02 22:32:27 +08:00
- Remove sponsor iframe from chat panel header - Add notice about switching from Opus 4.5 to Haiku 4.5 due to high traffic - Add sponsor button next to Support & Contact section title - Update all i18n about pages (EN, CN, JA)
207 lines
13 KiB
TypeScript
207 lines
13 KiB
TypeScript
import type { Metadata } from "next";
|
|
import Link from "next/link";
|
|
import { FaGithub } from "react-icons/fa";
|
|
import Image from "next/image";
|
|
|
|
export const metadata: Metadata = {
|
|
title: "About - Next AI Draw.io",
|
|
description: "AI-Powered Diagram Creation Tool - Chat, Draw, Visualize. Create AWS, GCP, and Azure architecture diagrams with natural language.",
|
|
keywords: ["AI diagram", "draw.io", "AWS architecture", "GCP diagram", "Azure diagram", "LLM"],
|
|
};
|
|
|
|
export default function About() {
|
|
return (
|
|
<div className="min-h-screen bg-gray-50">
|
|
{/* Navigation */}
|
|
<header className="bg-white border-b border-gray-200">
|
|
<div className="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 py-4">
|
|
<div className="flex items-center justify-between">
|
|
<Link href="/" className="text-xl font-bold text-gray-900 hover:text-gray-700">
|
|
Next AI Draw.io
|
|
</Link>
|
|
<nav className="flex items-center gap-6 text-sm">
|
|
<Link href="/" className="text-gray-600 hover:text-gray-900 transition-colors">
|
|
Editor
|
|
</Link>
|
|
<Link href="/about" className="text-blue-600 font-semibold">
|
|
About
|
|
</Link>
|
|
<a
|
|
href="https://github.com/DayuanJiang/next-ai-draw-io"
|
|
target="_blank"
|
|
rel="noopener noreferrer"
|
|
className="text-gray-600 hover:text-gray-900 transition-colors"
|
|
aria-label="View on GitHub"
|
|
>
|
|
<FaGithub className="w-5 h-5" />
|
|
</a>
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</header>
|
|
|
|
{/* Main Content */}
|
|
<main className="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
|
|
<article className="prose prose-lg max-w-none">
|
|
{/* Title */}
|
|
<div className="text-center mb-8">
|
|
<h1 className="text-4xl font-bold text-gray-900 mb-2">Next AI Draw.io</h1>
|
|
<p className="text-xl text-gray-600 font-medium">
|
|
AI-Powered Diagram Creation Tool - Chat, Draw, Visualize
|
|
</p>
|
|
<div className="flex justify-center gap-4 mt-4 text-sm">
|
|
<Link href="/about" className="text-blue-600 font-semibold">English</Link>
|
|
<span className="text-gray-400">|</span>
|
|
<Link href="/about/cn" className="text-gray-600 hover:text-blue-600">中文</Link>
|
|
<span className="text-gray-400">|</span>
|
|
<Link href="/about/ja" className="text-gray-600 hover:text-blue-600">日本語</Link>
|
|
</div>
|
|
</div>
|
|
|
|
<div className="bg-amber-50 border border-amber-200 rounded-lg p-4 mb-6">
|
|
<p className="text-amber-800">
|
|
This app is designed to run on Claude Opus 4.5 for best performance. However, due to higher-than-expected traffic, running the top-tier model has become cost-prohibitive. To avoid service interruptions and manage costs, I have switched the backend to Claude Haiku 4.5.
|
|
</p>
|
|
</div>
|
|
|
|
<p className="text-gray-700">
|
|
A Next.js web application that integrates AI capabilities with draw.io diagrams.
|
|
Create, modify, and enhance diagrams through natural language commands and AI-assisted visualization.
|
|
</p>
|
|
|
|
{/* Features */}
|
|
<h2 className="text-2xl font-semibold text-gray-900 mt-10 mb-4">Features</h2>
|
|
<ul className="list-disc pl-6 text-gray-700 space-y-2">
|
|
<li><strong>LLM-Powered Diagram Creation</strong>: Leverage Large Language Models to create and manipulate draw.io diagrams directly through natural language commands</li>
|
|
<li><strong>Image-Based Diagram Replication</strong>: Upload existing diagrams or images and have the AI replicate and enhance them automatically</li>
|
|
<li><strong>Diagram History</strong>: Comprehensive version control that tracks all changes, allowing you to view and restore previous versions of your diagrams before the AI editing</li>
|
|
<li><strong>Interactive Chat Interface</strong>: Communicate with AI to refine your diagrams in real-time</li>
|
|
<li><strong>AWS Architecture Diagram Support</strong>: Specialized support for generating AWS architecture diagrams</li>
|
|
<li><strong>Animated Connectors</strong>: Create dynamic and animated connectors between diagram elements for better visualization</li>
|
|
</ul>
|
|
|
|
{/* Examples */}
|
|
<h2 className="text-2xl font-semibold text-gray-900 mt-10 mb-4">Examples</h2>
|
|
<p className="text-gray-700 mb-6">Here are some example prompts and their generated diagrams:</p>
|
|
|
|
<div className="space-y-8">
|
|
{/* Animated Transformer */}
|
|
<div className="text-center">
|
|
<h3 className="text-lg font-semibold text-gray-900 mb-2">Animated Transformer Connectors</h3>
|
|
<p className="text-gray-600 mb-4">
|
|
<strong>Prompt:</strong> Give me an <strong>animated connector</strong> diagram of transformer's architecture.
|
|
</p>
|
|
<Image src="/animated_connectors.svg" alt="Transformer Architecture with Animated Connectors" width={480} height={360} className="mx-auto" />
|
|
</div>
|
|
|
|
{/* Cloud Architecture Grid */}
|
|
<div className="grid md:grid-cols-2 gap-6">
|
|
<div className="text-center">
|
|
<h3 className="text-lg font-semibold text-gray-900 mb-2">GCP Architecture Diagram</h3>
|
|
<p className="text-gray-600 text-sm mb-4">
|
|
<strong>Prompt:</strong> Generate a GCP architecture diagram with <strong>GCP icons</strong>. Users connect to a frontend hosted on an instance.
|
|
</p>
|
|
<Image src="/gcp_demo.svg" alt="GCP Architecture Diagram" width={400} height={300} className="mx-auto" />
|
|
</div>
|
|
<div className="text-center">
|
|
<h3 className="text-lg font-semibold text-gray-900 mb-2">AWS Architecture Diagram</h3>
|
|
<p className="text-gray-600 text-sm mb-4">
|
|
<strong>Prompt:</strong> Generate an AWS architecture diagram with <strong>AWS icons</strong>. Users connect to a frontend hosted on an instance.
|
|
</p>
|
|
<Image src="/aws_demo.svg" alt="AWS Architecture Diagram" width={400} height={300} className="mx-auto" />
|
|
</div>
|
|
<div className="text-center">
|
|
<h3 className="text-lg font-semibold text-gray-900 mb-2">Azure Architecture Diagram</h3>
|
|
<p className="text-gray-600 text-sm mb-4">
|
|
<strong>Prompt:</strong> Generate an Azure architecture diagram with <strong>Azure icons</strong>. Users connect to a frontend hosted on an instance.
|
|
</p>
|
|
<Image src="/azure_demo.svg" alt="Azure Architecture Diagram" width={400} height={300} className="mx-auto" />
|
|
</div>
|
|
<div className="text-center">
|
|
<h3 className="text-lg font-semibold text-gray-900 mb-2">Cat Sketch</h3>
|
|
<p className="text-gray-600 text-sm mb-4">
|
|
<strong>Prompt:</strong> Draw a cute cat for me.
|
|
</p>
|
|
<Image src="/cat_demo.svg" alt="Cat Drawing" width={240} height={240} className="mx-auto" />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
{/* How It Works */}
|
|
<h2 className="text-2xl font-semibold text-gray-900 mt-10 mb-4">How It Works</h2>
|
|
<p className="text-gray-700 mb-4">The application uses the following technologies:</p>
|
|
<ul className="list-disc pl-6 text-gray-700 space-y-2">
|
|
<li><strong>Next.js</strong>: For the frontend framework and routing</li>
|
|
<li><strong>Vercel AI SDK</strong> (<code>ai</code> + <code>@ai-sdk/*</code>): For streaming AI responses and multi-provider support</li>
|
|
<li><strong>react-drawio</strong>: For diagram representation and manipulation</li>
|
|
</ul>
|
|
<p className="text-gray-700 mt-4">
|
|
Diagrams are represented as XML that can be rendered in draw.io. The AI processes your commands and generates or modifies this XML accordingly.
|
|
</p>
|
|
|
|
{/* Multi-Provider Support */}
|
|
<h2 className="text-2xl font-semibold text-gray-900 mt-10 mb-4">Multi-Provider Support</h2>
|
|
<ul className="list-disc pl-6 text-gray-700 space-y-1">
|
|
<li>AWS Bedrock (default)</li>
|
|
<li>OpenAI / OpenAI-compatible APIs (via <code>OPENAI_BASE_URL</code>)</li>
|
|
<li>Anthropic</li>
|
|
<li>Google AI</li>
|
|
<li>Azure OpenAI</li>
|
|
<li>Ollama</li>
|
|
<li>OpenRouter</li>
|
|
<li>DeepSeek</li>
|
|
</ul>
|
|
<p className="text-gray-700 mt-4">
|
|
Note that <code>claude-sonnet-4-5</code> has trained on draw.io diagrams with AWS logos, so if you want to create AWS architecture diagrams, this is the best choice.
|
|
</p>
|
|
|
|
{/* Support */}
|
|
<div className="flex items-center gap-4 mt-10 mb-4">
|
|
<h2 className="text-2xl font-semibold text-gray-900">Support & Contact</h2>
|
|
<iframe
|
|
src="https://github.com/sponsors/DayuanJiang/button"
|
|
title="Sponsor DayuanJiang"
|
|
height="32"
|
|
width="114"
|
|
style={{ border: 0, borderRadius: 6 }}
|
|
/>
|
|
</div>
|
|
<p className="text-gray-700">
|
|
If you find this project useful, please consider{" "}
|
|
<a href="https://github.com/sponsors/DayuanJiang" target="_blank" rel="noopener noreferrer" className="text-blue-600 hover:underline">
|
|
sponsoring
|
|
</a>{" "}
|
|
to help host the live demo site!
|
|
</p>
|
|
<p className="text-gray-700 mt-2">
|
|
For support or inquiries, please open an issue on the{" "}
|
|
<a href="https://github.com/DayuanJiang/next-ai-draw-io" target="_blank" rel="noopener noreferrer" className="text-blue-600 hover:underline">
|
|
GitHub repository
|
|
</a>{" "}
|
|
or contact: me[at]jiang.jp
|
|
</p>
|
|
|
|
{/* CTA */}
|
|
<div className="mt-12 text-center">
|
|
<Link
|
|
href="/"
|
|
className="inline-block bg-blue-600 text-white px-8 py-3 rounded-lg font-semibold hover:bg-blue-700 transition-colors"
|
|
>
|
|
Open Editor
|
|
</Link>
|
|
</div>
|
|
</article>
|
|
</main>
|
|
|
|
{/* Footer */}
|
|
<footer className="bg-white border-t border-gray-200 mt-16">
|
|
<div className="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 py-6">
|
|
<p className="text-center text-gray-600 text-sm">
|
|
Next AI Draw.io - Open Source AI-Powered Diagram Generator
|
|
</p>
|
|
</div>
|
|
</footer>
|
|
</div>
|
|
);
|
|
}
|