chore: switch decorative CJK from Japanese to Chinese, drop em-dashes
All checks were successful
deploy / deploy (push) Successful in 50s

- Translate every Japanese kana/kanji glyph on the page to Simplified
  Chinese: side rail, CyberGrid lexicon rail, folios, footer, scramble pool,
  partner header (e.g. 流動性デスク -> 流动性交易台, katakana terms -> 哈希/流动性/深度/…).
- Remove em-dashes from the remaining code comments.
- Tighten two thesis lines that read as AI filler.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Денис Зефиров 2026-07-12 00:36:49 +04:00
parent 9dae780f30
commit d6e38d2a17
8 changed files with 23 additions and 23 deletions

View file

@ -1,5 +1,5 @@
/** /**
* DepthCanyon a 2D isometric voxel crater. A blocky terrain of dark cubes * DepthCanyon: a 2D isometric voxel crater. A blocky terrain of dark cubes
* carved by a glowing acid pit: market depth as a literal luminous hole in the * carved by a glowing acid pit: market depth as a literal luminous hole in the
* ground. Deterministic heightmap, painter-ordered cubes, palette-only colors * ground. Deterministic heightmap, painter-ordered cubes, palette-only colors
* (dark faces from the neutral ramp, acid overlays for the emissive throat). * (dark faces from the neutral ramp, acid overlays for the emissive throat).

View file

@ -18,8 +18,8 @@ function Reticle({ className, style }: { className?: string; style?: CSSProperti
); );
} }
// Romanised DeFi lexicon in katakana/kanji, read top-to-bottom on the rail. // DeFi lexicon in Chinese, read top-to-bottom on the rail.
const TERMS = "ハッシュ ・ 流動性 ・ デプス ・ ヴォルト ・ チェーン ・ 報酬 ・ 清算 ・ スプレッド ・ 市場深度"; const TERMS = "哈希 · 流动性 · 深度 · 金库 · 链 · 报酬 · 清算 · 点差 · 市场深度";
/** /**
* Site-wide cyber backdrop: dotted survey field, column lines with cross * Site-wide cyber backdrop: dotted survey field, column lines with cross
@ -69,7 +69,7 @@ export function CyberGrid() {
{/* top coordinate header */} {/* top coordinate header */}
<span className="absolute right-4 top-4 hidden font-mono text-[9px] uppercase tracking-[0.3em] text-fog-dim/45 md:block"> <span className="absolute right-4 top-4 hidden font-mono text-[9px] uppercase tracking-[0.3em] text-fog-dim/45 md:block">
RH-L2 4663 E-2026.07 · RH-L2 4663 · E-2026.07
</span> </span>
{/* targeting reticles */} {/* targeting reticles */}
@ -92,11 +92,11 @@ export function CyberGrid() {
</span> </span>
<span className="absolute bottom-8 left-4 hidden font-mono text-[9px] uppercase tracking-[0.22em] text-fog-dim/40 md:block"> <span className="absolute bottom-8 left-4 hidden font-mono text-[9px] uppercase tracking-[0.22em] text-fog-dim/40 md:block">
<Scramble text="Accuracy not guaranteed" interval={15000} /> // 市深度 <Scramble text="Accuracy not guaranteed" interval={15000} /> // 市深度
</span> </span>
<span className="absolute bottom-8 right-4 hidden font-mono text-[9px] uppercase tracking-[0.22em] text-fog-dim/35 lg:block"> <span className="absolute bottom-8 right-4 hidden font-mono text-[9px] uppercase tracking-[0.22em] text-fog-dim/35 lg:block">
// Surface data // Surface data
</span> </span>
</div> </div>
); );

View file

@ -2,12 +2,12 @@ import { useEffect, useRef, useState } from "react";
import { motionEnabled } from "@/lib/motion"; import { motionEnabled } from "@/lib/motion";
const GLYPHS = const GLYPHS =
"アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲン0123456789▚▞▮◎"; "流动性深度金库链报酬清算点差市场哈希滑点储备资金池挂单成交撮合0123456789▚▞▮◎";
/** /**
* Cyberdeck decode: the label periodically dissolves into katakana and * Cyberdeck decode: the label periodically dissolves into CJK and terminal
* terminal glyphs, then settles back left to right. Decorative labels only, * glyphs, then settles back left to right. Decorative labels only, never live
* never live figures. * figures.
*/ */
export function Scramble({ export function Scramble({
text, text,

View file

@ -1,7 +1,7 @@
/** /**
* Vertical neon signage on the hero's right rail: kanji street sign over a * Vertical neon signage on the hero's right rail: hanzi street sign over a
* mono locator stack and a barcode glyph run. Pure decoration, Marathon rail * mono locator stack and a barcode glyph run. Pure decoration, Marathon rail
* grammar with a Kabukicho accent. * grammar with a neon-street accent.
*/ */
export function SideRail() { export function SideRail() {
return ( return (
@ -13,7 +13,7 @@ export function SideRail() {
className="neon text-2xl font-semibold tracking-[0.3em]" className="neon text-2xl font-semibold tracking-[0.3em]"
style={{ writingMode: "vertical-rl" }} style={{ writingMode: "vertical-rl" }}
> >
</span> </span>
<span <span
className="font-mono text-[9px] uppercase tracking-[0.3em] text-fog-dim" className="font-mono text-[9px] uppercase tracking-[0.3em] text-fog-dim"

View file

@ -13,7 +13,7 @@ export function Footer() {
<LogoMark /> <LogoMark />
<Wordmark /> <Wordmark />
<span className="ml-1 font-mono text-[10px] tracking-[0.2em] text-fog-dim/70"> <span className="ml-1 font-mono text-[10px] tracking-[0.2em] text-fog-dim/70">
</span> </span>
</div> </div>
<p className="text-sm leading-relaxed text-fog"> <p className="text-sm leading-relaxed text-fog">

View file

@ -1,7 +1,7 @@
/** /**
* Design-system surface for design-sync: pure presentational components only. * Design-system surface for design-sync: pure presentational components only.
* App-level pieces (router/wagmi-bound screens, panels, layout) are excluded * App-level pieces (router/wagmi-bound screens, panels, layout) are excluded
* on purpose they need live context the design tool doesn't have. * on purpose: they need live context the design tool doesn't have.
*/ */
export { Button } from "./components/ui/button"; export { Button } from "./components/ui/button";
export { Card } from "./components/ui/card"; export { Card } from "./components/ui/card";

View file

@ -32,12 +32,12 @@ const THESIS = [
{ {
n: "02", n: "02",
title: "For traders", title: "For traders",
text: "Deeper books mean tighter spreads and less slippage on size. Execution quality is the product, not a promise.", text: "Deeper books mean tighter spreads and less slippage on size. Traders feel it on every fill.",
}, },
{ {
n: "03", n: "03",
title: "For Robinhood Chain", title: "For Robinhood Chain",
text: "Organic depth routed to the pairs that need it, not mercenary TVL chasing emissions. Capital that stays after the incentives.", text: "Organic depth routed to the pairs that need it, not mercenary TVL chasing emissions. It stays after the incentives end.",
}, },
]; ];
@ -144,7 +144,7 @@ export default function Landing() {
<Folio> <Folio>
<Scramble text="Liquidity campaigns for Stock Tokens" /> <Scramble text="Liquidity campaigns for Stock Tokens" />
</Folio> </Folio>
<Folio className="hidden text-fog-dim/70 md:inline">// 流性</Folio> <Folio className="hidden text-fog-dim/70 md:inline">// 流性</Folio>
</div> </div>
<h1 <h1
className="mt-9 leading-[0.94]" className="mt-9 leading-[0.94]"
@ -290,7 +290,7 @@ export default function Landing() {
{/* survey micro-line */} {/* survey micro-line */}
<div className="flex items-center justify-between gap-4 pt-3 font-mono text-[9px] uppercase tracking-[0.2em] text-fog-dim/70"> <div className="flex items-center justify-between gap-4 pt-3 font-mono text-[9px] uppercase tracking-[0.2em] text-fog-dim/70">
<span> RH-L2 4663 // E-2026.07</span> <span> RH-L2 4663 // E-2026.07</span>
<span className="hidden sm:inline"> // Surface data</span> <span className="hidden sm:inline"> // Surface data</span>
<span>+ 00 / 05 +</span> <span>+ 00 / 05 +</span>
</div> </div>
@ -314,7 +314,7 @@ export default function Landing() {
<div className="relative mx-auto max-w-7xl px-4 py-24 md:px-8 md:py-28"> <div className="relative mx-auto max-w-7xl px-4 py-24 md:px-8 md:py-28">
<motion.div {...inView} transition={{ duration: 0.5 }} className="flex items-center gap-4"> <motion.div {...inView} transition={{ duration: 0.5 }} className="flex items-center gap-4">
<Folio className="text-mint">[ 02 ]</Folio> <Folio className="text-mint">[ 02 ]</Folio>
<Folio className="hidden text-fog-dim/70 sm:inline"></Folio> <Folio className="hidden text-fog-dim/70 sm:inline"></Folio>
<div className="h-px flex-1 bg-edge" /> <div className="h-px flex-1 bg-edge" />
<Folio>{activeCampaigns} open now</Folio> <Folio>{activeCampaigns} open now</Folio>
</motion.div> </motion.div>
@ -411,7 +411,7 @@ export default function Landing() {
<Folio> <Folio>
<Scramble text="Thesis" interval={11000} /> <Scramble text="Thesis" interval={11000} />
</Folio> </Folio>
<Folio className="text-fog-dim/70">// 点</Folio> <Folio className="text-fog-dim/70">// 点</Folio>
</motion.div> </motion.div>
<motion.h2 <motion.h2
{...inView} {...inView}
@ -485,7 +485,7 @@ export default function Landing() {
className="neon-violet pointer-events-none absolute right-8 top-14 hidden select-none text-lg tracking-[0.4em] lg:block" className="neon-violet pointer-events-none absolute right-8 top-14 hidden select-none text-lg tracking-[0.4em] lg:block"
style={{ writingMode: "vertical-rl" }} style={{ writingMode: "vertical-rl" }}
> >
</span> </span>
<div className="relative mx-auto max-w-7xl px-4 py-32 md:px-8 md:py-40"> <div className="relative mx-auto max-w-7xl px-4 py-32 md:px-8 md:py-40">
<Folio className="text-mint"> <Folio className="text-mint">

View file

@ -67,7 +67,7 @@ export default function Partners() {
<CyberGrid /> <CyberGrid />
<div className="mb-6 flex items-center justify-between font-mono text-[10px] uppercase tracking-[0.22em] text-fog-dim"> <div className="mb-6 flex items-center justify-between font-mono text-[10px] uppercase tracking-[0.22em] text-fog-dim">
<span>Desk 00 // Applications</span> <span>Desk 00 // Applications</span>
<span className="hidden sm:inline"> // Partners</span> <span className="hidden sm:inline"> // Partners</span>
</div> </div>
<div className="slabel">Partner portal</div> <div className="slabel">Partner portal</div>
<h1 className="mt-3 text-4xl md:text-6xl">Launch a liquidity campaign</h1> <h1 className="mt-3 text-4xl md:text-6xl">Launch a liquidity campaign</h1>