feat(ui): Ghibli/Miyazaki reskin + Obsidian docs vault + project audit
UI: warm daylight design system (Tailwind v4 @theme palette, gh-* component classes, watercolor grain, Zen Maru Gothic + Klee One fonts), animated SSR-safe GhibliBackground (drifting clouds, meadow hills, soot sprites), and a full reskin of navbar, connect button, dapp page, loan cards, settings modal, and readme. Fixes the bg-white-on-dark loan-card inconsistency. Web3/business logic untouched. Docs: converted docs/ into an Obsidian vault (frontmatter, [[wikilinks]], callouts, Home MOC, folders Architecture/Operations/Audits) and added a full-project audit note (Project Audit 2026-06). Redacted a real leaked Schedy key value from the security audit example (rotate it at Schedy). Also commits the previously-untracked server layer: app/api (cron + tasks routes) and lib (redis, ssrf-guard, task-store). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -1,14 +1,29 @@
|
||||
import type { Metadata } from "next";
|
||||
import { Inter } from "next/font/google";
|
||||
import { Zen_Maru_Gothic, Klee_One } from "next/font/google";
|
||||
import "./globals.css";
|
||||
import Navbar from "@/components/Navbar";
|
||||
import GhibliBackground from "@/components/GhibliBackground";
|
||||
import { Web3Provider } from "@/providers/Web3Provider";
|
||||
|
||||
const inter = Inter({ subsets: ['latin'] });
|
||||
// Soft, rounded Japanese sans for body text…
|
||||
const zen = Zen_Maru_Gothic({
|
||||
subsets: ["latin"],
|
||||
weight: ["400", "500", "700"],
|
||||
variable: "--font-zen",
|
||||
display: "swap",
|
||||
});
|
||||
|
||||
// …and a handwritten storybook face for headings & brand.
|
||||
const klee = Klee_One({
|
||||
subsets: ["latin"],
|
||||
weight: ["400", "600"],
|
||||
variable: "--font-klee",
|
||||
display: "swap",
|
||||
});
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: 'MortgageFi - Decentralized Mortgage Lending',
|
||||
description: 'Secure, flexible, and innovative solutions for your digital assets',
|
||||
title: "MortgageFi — Decentralized Mortgage Lending",
|
||||
description: "Secure, flexible, and gentle solutions for your digital assets",
|
||||
};
|
||||
|
||||
export default function RootLayout({
|
||||
@@ -17,17 +32,17 @@ export default function RootLayout({
|
||||
children: React.ReactNode;
|
||||
}) {
|
||||
return (
|
||||
<html lang="en">
|
||||
<body className={`${inter.className} bg-gray-900 text-gray-100 min-h-screen`}>
|
||||
<html lang="en" className={`${zen.variable} ${klee.variable}`}>
|
||||
<body className="min-h-screen text-ink antialiased">
|
||||
<GhibliBackground />
|
||||
<Web3Provider>
|
||||
<div className="min-h-screen flex flex-col">
|
||||
<Navbar />
|
||||
<main className="flex-1">
|
||||
{children}
|
||||
</main>
|
||||
<footer className="bg-gray-900 border-t border-gray-800 py-6">
|
||||
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
||||
<p className="text-center text-gray-400 text-sm">
|
||||
<main className="flex-1">{children}</main>
|
||||
<footer className="mt-10 border-t border-line/60 py-6">
|
||||
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 flex flex-col items-center gap-1">
|
||||
<span className="gh-eyebrow text-sm">🌿 made with care</span>
|
||||
<p className="text-center text-ink-soft text-sm">
|
||||
© {new Date().getFullYear()} MortgageFi. All rights reserved.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user