Tokyo35°38'3" N 139°42'28" E--:--:--
ワークフロー2026-04-11

Aki.Archive 設計図 — サイトアーキテクチャ全解説

ArchitectureNext.jsAI-ReadableOpen Design

このサイトは「作品」である

Aki.Archiveは単なるポートフォリオではない。AIによってAIのために生成されたWebsite — サイトそのものが生成AIの作品であり、そのプロセスを含めて公開することに意味がある。

この記事では、サイトの設計思想から実装の詳細まで、すべてを設計図として公開する。


技術スタック

コアフレームワーク

| 技術 | バージョン | 役割 | |------|-----------|------| | Next.js | 16.2.2 | App Router + 静的エクスポート | | React | 19.2.4 | UI構築 | | TypeScript | 5 | 型安全性 | | Tailwind CSS | v4 | CSS-firstスタイリング |

コンテンツ & データ

| 技術 | 役割 | |------|------| | MDX (next-mdx-remote) | 作品・記事コンテンツ | | gray-matter | YAMLフロントマター解析 | | next-intl | 日英バイリンガル対応 |

アニメーション & ビジュアル

| 技術 | 役割 | |------|------| | Framer Motion | UIアニメーション・文字出現 | | Canvas API | Perlin Noiseビジュアル | | Simplex Noise (自前実装) | 有機的な動き生成 |


サイト構造

/ja/                    トップページ(Heroアニメーション)
/ja/works/              作品一覧(54作品)
/ja/works/[slug]/       作品詳細(画像・音楽・映像)
/ja/collections/        コレクション一覧
/ja/collections/[slug]/ コレクション詳細
/ja/lab/                Lab記事一覧
/ja/lab/[slug]/         Lab記事詳細
/ja/about/              プロフィール・Press Kit
/ja/faq/                FAQ(構造化データ付き)
/ja/glossary/           AI用語集
/ja/authority/          実績・メディア掲載
/ja/contact/            お問い合わせ

全ページが /ja/ と /en/ の2言語で生成される。合計150以上のURL。


データアーキテクチャ

ファイルベースCMS

データベースは使わない。すべてのコンテンツはMDXファイルとJSONファイルで管理される。

content/
├── works/          54個のMDXファイル(画像・音楽・映像)
├── collections/    3個のMDXファイル
├── lab/            Lab記事
├── faq.json        FAQ(日英対応)
├── glossary.json   AI用語集(日英対応)
├── authority.json  実績データ
└── i18n/
    ├── ja.json     日本語翻訳
    └── en.json     英語翻訳

作品データ型

TypeScriptで型安全に管理:

WorkFrontmatter {
  slug           // URL識別子
  title          // 日本語タイトル
  title_en       // 英語タイトル
  type           // "image" | "music" | "video"
  tools          // 使用ツール(配列)
  created_at     // 制作日
  thumbnail      // サムネイルパス
  collections    // 所属コレクション
  prompt_summary // 制作概要(日本語)
  parameters     // 生成パラメータ
  audio_src      // 音楽ファイルパス
  video_embed    // YouTube埋め込みURL
}

AI可読性設計

このサイトが「AIのために」設計されている根拠。

1. 構造化データ(JSON-LD)

4種類のスキーマを埋め込み:

  • WebSite — サイト名・URL・対応言語
  • Person — 制作者プロフィール・SNSリンク
  • CreativeWork — 各作品のメタデータ・使用ツール
  • FAQPage — FAQ構造化(Google検索対応)

2. llms.txt

AIアシスタントがサイトを理解するための専用ファイル。サイト概要、構造、コンテンツタイプ、APIエンドポイントを記載。

3. JSON API

/api/works.json — 全作品データをJSON形式で公開。外部AIやツールからプログラマティックにアクセス可能。

4. セマンティックHTML

見出し階層、alt属性、ARIA属性を適切に使用。スクリーンリーダーもAIクローラーも理解しやすい構造。

5. サイトマップ & robots.txt

150以上のURLを含むXMLサイトマップ。全コンテンツをクローラーに公開。

6. FAQ & Glossary

構造化されたQ&AとAI用語集。AIが文脈を理解するための知識ベース。


ビジュアルエフェクト設計

Perlin Noiseキャンバス

トップページの背景アニメーション。3つの要素で構成:

1. ノイズフィールドライン Perlin Noiseで計算された12本の流動的なライン。シアン→マゼンタのグラデーション。各ラインに3層のグロー(発光)エフェクト。

2. パーティクルシステム 最大600個のパーティクルがノイズフィールドに従って漂う。パーティクルは元の位置にゆっくり引き戻される弾性を持つ。

3. マウスインタラクション

  • マウス近接でパーティクルが軌道運動
  • パーティクル同士が接続線で結ばれる
  • ノイズラインがマウスに反応して歪む
  • マウスが離れると有機的に復元

テキストアニメーション

CharReveal — 1文字ずつブラーからフェードイン。各文字に0.06秒のスタガー。

GlitchText — カタカナ・記号のグリッチ文字からデコードされるように表示。タイプライター風カーソル付き。


静的サイト生成(SSG)

なぜ静的か

  • パフォーマンス: 事前レンダリングでCDNエッジから即座に配信
  • セキュリティ: サーバーランタイムなし、攻撃面ゼロ
  • コスト: サーバー不要、Netlifyの無料枠で運用可能
  • 信頼性: ダウンタイムなし

ビルド設定

output: "export"         // 完全な静的HTML出力
images.unoptimized: true // 画像最適化なし(静的対応)
trailingSlash: true      // URL末尾にスラッシュ

すべてのページに export const dynamic = "force-static" を指定。ビルド時に全ページを事前生成。


コンポーネント設計

20個の再利用可能なReactコンポーネント:

レイアウト層

Header / Footer / Container

ページセクション

HeroSection / SectionHeading / WorksGrid

作品表示

WorkCard / WorkHighlight / RelatedWorks / PlaceholderImage

UI要素

Card / Badge / Accordion / FilterBar / TechnicalNote

ビジュアル

NoiseCanvas / WaveCanvas / PageTransition

機能

Toolkit / ContactForm


デプロイメント

Netlify静的デプロイ

ビルド → out/ → out-lite/(動画除外)→ Netlify CLI

動画は容量削減のためYouTube埋め込みに移行。15本全てがYouTubeから配信される。


数字で見るAki.Archive

| 指標 | 値 | |------|-----| | 総作品数 | 54 | | 画像作品 | 35 | | 音楽作品 | 5 | | 映像作品 | 14 | | コレクション | 3 | | Lab記事 | 4 | | コンポーネント | 20 | | サイトマップURL | 150+ | | 対応言語 | 2(日・英) | | JSON-LDスキーマ | 4種類 | | デプロイサイズ | ~96MB |


まとめ

Aki.Archiveは「AIが作った作品を見せるサイト」ではなく、サイトそのものがAIとの共創プロセスの産物である。

コンテンツ、コード、設計思想、ビジュアルエフェクト — すべてがAIとの対話から生まれた。そしてこの設計図を公開することで、プロセスのアーカイブは完成する。

サイトを作ることが作品。設計図を公開することがステートメント。

関連記事